Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Subst not applying after changeing subst conf & restart #26

Open
guilledk opened this issue Feb 22, 2024 · 1 comment
Open

Subst not applying after changeing subst conf & restart #26

guilledk opened this issue Feb 22, 2024 · 1 comment
Assignees
Labels
bug Something isn't working

Comments

@guilledk
Copy link
Collaborator

guilledk commented Feb 22, 2024

Found several times by tom & the gang after trying to test new gas estimation changes on telos.evm.

Procedure to trigger it: have a testnet node running substitution with manifest, stop node, switch config to use local subst wasm, restart, old subst will still be applied.

Two theories atm:

1 - related to gas estimation txs beign always reverted, if im correct with current subst logic this txs should cause wasm to be subst while they run but not keep the subst afterwards due to native chainbase undo(), for some reason its not beign applied while estimation runs, must investigate

2 - (less likely) posible issue with on-disk database after restart, would need to add some sort of contract db state reading function

@guilledk guilledk self-assigned this Feb 22, 2024
@guilledk guilledk added the bug Something isn't working label Feb 22, 2024
@guilledk
Copy link
Collaborator Author

Third theory: subst plugin metadata/state tracking logic will most likely break if its modified on a transaction that reverts, cause state tracking is done in plugin class instance and code subst is done on the actual on chain db that will get undo() by the end of the tx, this causes metadata and actual subst'd bytecode data to get out of sync.

Solution to this should be doing all our tracking on the on-chain db

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant