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

Rework of Execution context setting per operation #4845

Open
Leo-Besancon opened this issue Feb 4, 2025 · 0 comments
Open

Rework of Execution context setting per operation #4845

Leo-Besancon opened this issue Feb 4, 2025 · 0 comments
Labels

Comments

@Leo-Besancon
Copy link
Collaborator

Currently, the execution context is persistant during a slot execution, but relies on a lot of reset logic per each execution (of an operation, async_message or deferred_call.
As a result, we have to ensure that each field is correctly reset at the beginning of an execution:

  • gas_remaining_before_subexecution
  • recursion_counter
  • stack
  • user_event_count_in_current_exec
  • ...

It is error prone, as forgetting setting it at one place can have heavy consequences (e.g. see checklist here: #4840 (comment))

We should group all these fields in a single struct (e.g. OperationContext), so that we can reset everything at once.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant