From 6f5ea9cc7d7dcaffa26ff203f7f4b5e458492858 Mon Sep 17 00:00:00 2001 From: Krzysztof Lis Date: Fri, 8 Mar 2024 16:29:28 +0100 Subject: [PATCH] fixup! refactor(storage): merge counters with headers table --- crates/rpc/fixtures/mainnet.sqlite | Bin 393216 -> 393216 bytes crates/storage/src/connection.rs | 2 +- crates/storage/src/connection/state_update.rs | 17 +++++++++++------ 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/crates/rpc/fixtures/mainnet.sqlite b/crates/rpc/fixtures/mainnet.sqlite index 064ba047d70bc6a2a70651a82dc1a674c8fdbdba..6ea823223b2b8db99774753e39803279c045864e 100644 GIT binary patch delta 691 zcmZo@kZ5R-m>{jH$iTpm0K_m50%WkjI6#^ah>a%;D#$Y`ZcJEMFUoO|ft~#z1N%X~ z54`tz&T;SMTFW_iv!KFic8MllMll}_9~K=SP9Gp(@Dw_x^ zQ0UC$s~snRirK|{7%>!cOn%t$U6QMbmkq1z^bgBe6en|bU6T}S;$y|Gpbzw(2*Vr(eigole0{tNdBb>)@ia5c;qlEic9i~64O)TQ!>-iisO^>OY=$;JpDpk z-CcteTwL88Lw!ON40IIo^7E2Y<4X%t5=&C?C`(CA&PgmvO^F9m#l`ql7UblsRf3e} z=am#CCYRteR&zUBBI7DnHhUg6@nGHQj(Lm{)4!xMDsSJA#;C?PT|9&F+;qMiMr$@l zb~f=)eUJjhX}OFt(>-$-Crr1_WAvWxm&^EedRrc2Fq{hx$H2gl0K_m50A#ShI6#^ah>a!-D#$a+ZA@5LF9PJUb6jNL`^Ec( z=Pma$uKS!fIHn6aupHQ|pzw#CrHO@|Z}QcS6O$Dbq$YQFDGD~Ru<`jY`mpHuaQXlN zBggcQ%UBd9KkK>%lww7b+Gqom`qmASVnLHCRlv`xFj=AxsEe72 z4`>aNT?&7J25R;LbulyY`EVdhP0VCgnEb2#>ZS>d7mRsj7(^J^82E1TZ{=&__2aYV z@#MM5@sx*;L!4~``!&{cEWen)GOIH!W0GT>0907U{{t8%m$ql7Fs@?V9+JhV#yDL# zi_vjvZt%^91+r?1Xs)R?|7m+>u|Co7wHtT{wgNiL)A^u9dC;OQ#)jCZC#%wu%s a07e1`Gqe>jwiPh76)?9Iuq-QJod5tO6n!%Q diff --git a/crates/storage/src/connection.rs b/crates/storage/src/connection.rs index 8acc4eb132..e60c135f74 100644 --- a/crates/storage/src/connection.rs +++ b/crates/storage/src/connection.rs @@ -545,7 +545,7 @@ impl<'inner> Transaction<'inner> { block_number: BlockNumber, counts: &StateUpdateCounts, ) -> anyhow::Result<()> { - state_update::insert_state_update_counts(self, block_number, counts) + state_update::update_state_update_counts(self, block_number, counts) } pub fn state_update(&self, block: BlockId) -> anyhow::Result> { diff --git a/crates/storage/src/connection/state_update.rs b/crates/storage/src/connection/state_update.rs index f6c15c36e5..d345b8a00a 100644 --- a/crates/storage/src/connection/state_update.rs +++ b/crates/storage/src/connection/state_update.rs @@ -97,7 +97,7 @@ pub(super) fn insert_state_update( } /// Inserts a [StateUpdateCounts] instance into storage. -pub(super) fn insert_state_update_counts( +pub(super) fn update_state_update_counts( tx: &Transaction<'_>, block_number: BlockNumber, counts: &StateUpdateCounts, @@ -105,16 +105,21 @@ pub(super) fn insert_state_update_counts( let mut stmt = tx .inner() .prepare_cached( - "INSERT INTO block_headers (block_number, storage_diffs, nonce_updates, declared_classes, deployed_contracts) VALUES (?, ?, ?, ?, ?)", + r"UPDATE block_headers SET + storage_diffs_count=?, + nonce_updates_count=?, + declared_classes_count=?, + deployed_contracts_count=? + WHERE number=?", ) .context("Preparing insert statement")?; stmt.execute(params![ - &block_number, &counts.storage_diffs, &counts.nonce_updates, &counts.declared_classes, - &counts.deployed_contracts + &counts.deployed_contracts, + &block_number, ]) .context("Inserting state update counts")?; @@ -326,8 +331,8 @@ pub(super) fn state_update_counts( let mut stmt = tx .inner() .prepare_cached( - r"SELECT storage_diffs, nonce_updates, declared_classes, deployed_contracts - FROM block_headers WHERE block_number >= ? ORDER BY block_number ASC LIMIT ?", + r"SELECT storage_diffs_count, nonce_updates_count, declared_classes_count, deployed_contracts_count + FROM block_headers WHERE number >= ? ORDER BY number ASC LIMIT ?", ) .context("Preparing get state update counts statement")?;