aptos-core
aptos-core copied to clipboard
BlockSTMv2 PR [3/n]: executor refactors for integration preparation
Introduce SchedulerWrapper by wrapping the dispatching logic (currently V2 branches marked unimplemented!). Refactor executor.rs to:
-
decouple parameters (module read validation),
-
isolate functionality (process execution results),
-
clean up and streamline the prepare and commit ready txns method
-
introduce AggregatorV1 KeyKind
-
add additional validation to confirm safaty in post commit parallel hook All facilitating later re-use and integration of features with Scheduler/BlockSTMv2 alongside V1.
-
other minor / convenience clean-ups from the prototype branch, such as extracting parameters from a result before calling finalize groups (https://github.com/aptos-labs/aptos-core/compare/main...gelash/v2scheduler#diff-9ef162a216d74568caa85b78dfaf100e0c8b3eb1e66536451492392d8c00d2b0) to not distract from later (larger) PRs.
Must review extra carefully, as this is the first PR in the sequence that affects in-prod enabled code flows. However, it is intended to maintain the current functionality and passes existing tests.
Can be landed directly to main, does not require 2/n to land beforehand.