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
There are several occasions in which the ABCI app needs to perform a query on the intermediate state prior to committing it. One such example is #1234.
Currently we're working around the lack of such an API by using modify_exec_state, which downgrades safety.
Let's implement the corresponding API so we can retain safety, and let's migrate illegitimate use cases to it.
Prior discussion
@cryptoAtwill Unfortunately the FVM executor does not expose read-only semantics through its execute_message API.
So we'd have to add a method to "fork" the executor/machine using the intermediate state tree root (which you can get from machine.state_tree()) and a BufferedBlockstore over the original Blockstore (machine.blockstore()), which we discard after we finish the query.
There are several occasions in which the ABCI app needs to perform a query on the intermediate state prior to committing it. One such example is #1234.
Currently we're working around the lack of such an API by using modify_exec_state, which downgrades safety.
Let's implement the corresponding API so we can retain safety, and let's migrate illegitimate use cases to it.
Prior discussion
Originally posted by @raulk in #1234 (review)
The text was updated successfully, but these errors were encountered: