You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Existing implementations in practice consider transactions within a block to act on the global state sequentially, and they perform consensus checks accordingly. (Pointed out by @str4d.)
The text was updated successfully, but these errors were encountered:
This is a similar state-access-ordering issue to #957, and this comment from there applies:
This [ambiguity] is a consequence of the use of imperative statements like "reduce the value" or "increase the value" [in consensus rules]. I don't want to claim these are strictly never used in existing consensus rules, but it is undesirable to use them because of ambiguities like that above [between issuance and the check for burn validity]. It is far preferable to refer explicitly to indexed states, i.e. to define notation for the global state before and after the transaction. Then a consensus rule that performs an "update" can be rephrased as imposing a relation between the before-state and after-state, which resolves a lot of potential ambiguities (in particular, conflicting requirements automatically do the right thing which is to reject the transaction).
…ock boundary (#81)
This completes the changes needed to make sure the finalization comes
into effect immediately. A part of this was done in
#75, the remainder is covered here.
This solves zcash#958.
Existing implementations in practice consider transactions within a block to act on the global state sequentially, and they perform consensus checks accordingly. (Pointed out by @str4d.)
The text was updated successfully, but these errors were encountered: