-
Notifications
You must be signed in to change notification settings - Fork 26
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
chore(blockifier): remove struct ExecutionFlags and replace w concurrency_mode bool #2470
chore(blockifier): remove struct ExecutionFlags and replace w concurrency_mode bool #2470
Conversation
5c8ba11
to
1399eee
Compare
5c9a0e7
to
aa95b95
Compare
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #2470 +/- ##
===========================================
+ Coverage 40.10% 72.04% +31.94%
===========================================
Files 26 101 +75
Lines 1895 13524 +11629
Branches 1895 13524 +11629
===========================================
+ Hits 760 9744 +8984
- Misses 1100 3365 +2265
- Partials 35 415 +380 ☔ View full report in Codecov by Sentry. |
aa95b95
to
7a6feaf
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reviewed 7 of 7 files at r1, all commit messages.
Reviewable status: all files reviewed, 2 unresolved discussions (waiting on @avivg-starkware)
crates/blockifier/src/concurrency/worker_logic.rs
line 128 at r1 (raw file):
let mut transactional_state = TransactionalState::create_transactional(&mut tx_versioned_state); let execution_result = tx.execute_raw(&mut transactional_state, self.block_context, true);
Suggestion:
let concurrency_mode = true;
let execution_result = tx.execute_raw(&mut transactional_state, self.block_context, concurrency_mode)
crates/blockifier/src/blockifier/transaction_executor.rs
line 106 at r1 (raw file):
// Executing a single transaction cannot be done in a concurrent mode. let tx_execution_result = tx.execute_raw(&mut transactional_state, &self.block_context, false);
Suggestion:
use crate::transaction::errors::TransactionExecutionError;
use crate::transaction::objects::TransactionExecutionInfo;
use crate::transaction::transaction_execution::Transaction;
use crate::transaction::transactions::ExecutableTransaction;
#[cfg(test)]
#[path = "transaction_executor_test.rs"]
block_context,
bouncer: Bouncer::new(bouncer_config),
config,
block_state: Some(block_state),
}
}
/// Executes the given transaction on the state maintained by the executor.
/// Returns the execution result (info or error) if there is room for the transaction;
/// Otherwise, returns BlockFull error.
pub fn execute(
&mut self,
tx: &Transaction,
) -> TransactionExecutorResult<TransactionExecutionInfo> {
let mut transactional_state = TransactionalState::create_transactional(
self.block_state.as_mut().expect(BLOCK_STATE_ACCESS_ERR),
);
// Executing a single transaction cannot be done in a concurrent mode.
let concurrency_mode = false;
let tx_execution_result =
tx.execute_raw(&mut transactional_state, &self.block_context, concurrency_mode);
1399eee
to
b56c3cc
Compare
7a6feaf
to
d6e849f
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reviewable status: 3 of 7 files reviewed, 2 unresolved discussions (waiting on @Yoni-Starkware)
crates/blockifier/src/blockifier/transaction_executor.rs
line 106 at r1 (raw file):
// Executing a single transaction cannot be done in a concurrent mode. let tx_execution_result = tx.execute_raw(&mut transactional_state, &self.block_context, false);
Done.
crates/blockifier/src/concurrency/worker_logic.rs
line 128 at r1 (raw file):
let mut transactional_state = TransactionalState::create_transactional(&mut tx_versioned_state); let execution_result = tx.execute_raw(&mut transactional_state, self.block_context, true);
Done.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reviewed 4 of 4 files at r2, all commit messages.
Reviewable status: complete! all files reviewed, all discussions resolved (waiting on @avivg-starkware)
b56c3cc
to
034af8e
Compare
d6e849f
to
d694175
Compare
034af8e
to
1849cee
Compare
d694175
to
2dfaff5
Compare
1849cee
to
7a4c3d1
Compare
2dfaff5
to
ccdd83a
Compare
7a4c3d1
to
b01d6c7
Compare
ccdd83a
to
8f39c8c
Compare
b01d6c7
to
93372de
Compare
8f39c8c
to
d83212d
Compare
7499db4
to
cb264d9
Compare
d83212d
to
be7e87a
Compare
cb264d9
to
12b3f24
Compare
be7e87a
to
b39c463
Compare
12b3f24
to
8f65bf8
Compare
b39c463
to
d2d4ca4
Compare
c7f62ab
to
d2d4ca4
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reviewed 2 of 7 files at r1, 4 of 4 files at r2, 1 of 1 files at r3, all commit messages.
Reviewable status: complete! all files reviewed, all discussions resolved (waiting on @avivg-starkware)
* chore(starknet_batcher): delete obsolete todo (starkware-libs#2389) * chore(blockifier): add global max_sierra_gas to versioned constants (starkware-libs#2330) * feat(starknet_api): checked mul for gas vector (starkware-libs#2300) * feat(consensus): proposer rotates across validators (starkware-libs#2405) * feat(sequencing): validate streamed proposals (starkware-libs#2305) * feat(ci): deny rust warnings in all workflows (starkware-libs#2388) Signed-off-by: Dori Medini <dori@starkware.co> * feat(blockifier): compute allocation cost (starkware-libs#2301) * chore(starknet_sequencer_infra): add dynamic logging util fn commit-id:9ffe9fbe * chore(starknet_sequencer_infra): add tracing test commit-id:76d16e9a * chore(starknet_sequencer_infra): add run_until utility fn commit-id:194a4b6c * chore(infra_utils): change run_until to support async functions commit-id:92e1f8a3 * chore(starknet_integration_tests): use run_until to await for block creation commit-id:667e001c * chore(infra_utils): rename logger struct commit-id:6520ae54 * chore(blockifier): explicit creation of AccountTransaction (starkware-libs#2331) * test(starknet_integration_tests): test commit blocks by running multiple heights * chore(starknet_batcher): set temp gas prices in propose block input (starkware-libs#2341) * chore(starknet_batcher): set use_kzg_da flag in build block input (starkware-libs#2345) * feat(ci): inherit the rust toolchain toml in moonrepo action (starkware-libs#2423) Signed-off-by: Dori Medini <dori@starkware.co> * chore(blockifier): enforce_fee() impl by api::executable_transaction::AccountTransaction (starkware-libs#2377) * chore(starknet_integration_tests): inherit sequencer node's stdout (starkware-libs#2427) * chore(blockifier): invoke() declare() deploy_account() change ret val to api_tx (starkware-libs#2412) * chore(starknet_consensus_manager): set proposer address in propose block input (starkware-libs#2346) * feat(consensus): add observer mode * feat(consensus): sequencer context broadcasts votes (starkware-libs#2422) * chore(deployment): support unified deployment config (starkware-libs#2378) * feat(starknet_api): add sierra version to class info (starkware-libs#2313) * refactor(starknet_api): change default sierra contract class to valid one (starkware-libs#2439) * feat(starknet_l1_provider): add uninitiailized state and make it the default (starkware-libs#2434) This is to comply with upcoming integration with infra, which separates instantiation with initialization. In particular, `Pending` state should be already post-syncing with L1, whereas `Uninitialized` is unsynced and unusable. Co-Authored-By: Gilad Chase <gilad@starkware.com> * feat(papyrus_storage)!: bump storage version for version 13.4 (starkware-libs#2333) * feat(native_blockifier): allow deserialization of python l1_data_gas (starkware-libs#2447) * refactor(blockifier): split FC to groups base on their tags (starkware-libs#2236) * test(consensus): remove warning on into mock propsal part (starkware-libs#2448) * chore(blockifier): use test_utils::invoke_tx() instead of trans::test_utils::account_invoke_tx() (starkware-libs#2428) * chore(blockifier): save sierra to Feature contracts (starkware-libs#2370) * feat(blockifier): don't count Sierra gas in CairoSteps mode (starkware-libs#2440) * chore(blockifier): convert Sierra gas to L1 gas if in L1 gas mode (starkware-libs#2451) * feat(blockifier): add comprehensive state diff versioned constant (starkware-libs#2407) * chore(starknet_consensus_manager): add chain_id to config * refactor(papyrus_p2p_sync): add random_header utility function (starkware-libs#2381) * chore(starknet_batcher): pass block info from consensus to batcher (starkware-libs#2238) * test(starknet_mempool): tx added to mempool are forwarded to propagator client (starkware-libs#2288) * fix: fix CR comments * test(starknet_mempool): tx added to mempool are forwarded to propagator client * feat(sequencing): cache proposals from bigger heights(starkware-libs#2325) * fix: change to latest ubuntu version in feature combo CI (starkware-libs#2414) * chore(blockifier): replace entry_point_gas_cost with initial_budget (starkware-libs#2247) * test(starknet_gateway): handle todo in test_get_block_info (starkware-libs#2267) * chore(starknet_api): revert use get_packaget_dir instead of env var This reverts commit c45f5cc. commit-id:a48736e7 * chore(starknet_api): rely on env::current_dir() instead of CARGO_MANIFEST_DIR commit-id:301ed4eb * chore(blockifier): move env var from run time to compile time commit-id:80a7265d * chore(starknet_sierra_compile): move env var from run time to compile time commit-id:6e7f2a75 * chore: remove the use of zero as a validator id (starkware-libs#2411) * refactor(papyrus_p2p_sync): add_test receives query size instead of constant (starkware-libs#2379) * fix(blockifier): merge state diff with squash (starkware-libs#2310) * feat(blockifier): get revert receipt only in case of revert (starkware-libs#2471) * chore(starknet_integration_tests): create chain info once (starkware-libs#2482) * chore(starknet_sierra_compile): split build utils commit-id:0f504fd7 * chore(starknet_sierra_compile): set runtime-accessible out_dir env var commit-id:539f16db * chore(starknet_sierra_compile): avoid using OUT_DIR in run time commit-id:cd6fba29 * refactor(starknet_api): use const in sierra version (starkware-libs#2477) * chore: cleanups of OUT_DIR env var (starkware-libs#2484) commit-id:18d61b1d * chore(starknet_api): shorten executable_transaction usage path * fix(sequencing): remove old proposal pipes from consensus (starkware-libs#2452) * test(starknet_integration_tests): match sequencer address with default validator id (starkware-libs#2486) * fix(ci): move specific versioned deps to root toml (starkware-libs#2487) * fix(ci): move specific versioned deps to root toml Signed-off-by: Dori Medini <dori@starkware.co> * fix(starknet_sierra_compile): fix build.rs Signed-off-by: Dori Medini <dori@starkware.co> * chore(starknet_batcher): in block builder use the consensus suplied sequncer address (starkware-libs#2409) * chore: cleanups of CARGO_MANIFEST_DIR env var commit-id:c96f2d88 * fix(starknet_sierra_compile): missing import in feature (starkware-libs#2495) commit-id:abd0a286 * chore(blockifier): add keccak_builtin_gas_cost (starkware-libs#2327) * chore(blockifier): add struct ExecutionFlags to AccTx & use instead of transaction::ExecutionFlags (starkware-libs#2429) * chore(blockifier): add new constructor to AccountTransaction (starkware-libs#2431) * chore(blockifier): remove only_qury from IvokeTxArgs (starkware-libs#2437) * chore(blockifier): remove struct ExecutionFlags and replace w concurrency_mode bool (starkware-libs#2470) * chore(blockifier): remove declare.rs deploy_account.rs invoke.rs from blockifier (starkware-libs#2478) --------- Signed-off-by: Dori Medini <dori@starkware.co> Co-authored-by: YaelD <70628564+Yael-Starkware@users.noreply.github.com> Co-authored-by: aner-starkware <147302140+aner-starkware@users.noreply.github.com> Co-authored-by: yoavGrs <97383386+yoavGrs@users.noreply.github.com> Co-authored-by: matan-starkware <97523054+matan-starkware@users.noreply.github.com> Co-authored-by: guy-starkware <guy.n@starkware.co> Co-authored-by: dorimedini-starkware <dori@starkware.co> Co-authored-by: Itay Tsabary <itayt@starkware.co> Co-authored-by: avivg-starkware <aviv.g@starkware.co> Co-authored-by: Yair Bakalchuk <yair@starkware.co> Co-authored-by: Arnon Hod <arnon@starkware.co> Co-authored-by: Alon Haramati <91828241+alonh5@users.noreply.github.com> Co-authored-by: Asmaa Magdoub <asmaa@starkware.co> Co-authored-by: alon-dotan-starkware <alon.dotan@starkware.co> Co-authored-by: AvivYossef-starkware <141143145+AvivYossef-starkware@users.noreply.github.com> Co-authored-by: giladchase <gilad@starkware.co> Co-authored-by: Gilad Chase <gilad@starkware.com> Co-authored-by: DvirYo-starkware <115620476+DvirYo-starkware@users.noreply.github.com> Co-authored-by: nimrod-starkware <143319383+nimrod-starkware@users.noreply.github.com> Co-authored-by: Meshi Peled <141231558+meship-starkware@users.noreply.github.com> Co-authored-by: Yoni <78365039+Yoni-Starkware@users.noreply.github.com> Co-authored-by: Yael Doweck <yael@starkware.co> Co-authored-by: ShahakShama <70578257+ShahakShama@users.noreply.github.com> Co-authored-by: Alon-Lukatch-Starkware <alon.l@starkware.co> Co-authored-by: Yonatan-Starkware <yonatan.k@starkware.co> Co-authored-by: Yair <92672946+yair-starkware@users.noreply.github.com> Co-authored-by: Itay-Tsabary-Starkware <106665835+Itay-Tsabary-Starkware@users.noreply.github.com>
No description provided.