From c5dc26f542490810d98e332d0fef0622c9d203fa Mon Sep 17 00:00:00 2001 From: pedrocarlo Date: Mon, 18 Aug 2025 11:55:45 -0300 Subject: [PATCH] reset more pager state machines in rollback --- core/storage/pager.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/core/storage/pager.rs b/core/storage/pager.rs index e256d41de..be62963bf 100644 --- a/core/storage/pager.rs +++ b/core/storage/pager.rs @@ -1928,6 +1928,16 @@ impl Pager { state: CommitState::Start, }); self.allocate_page_state.replace(AllocatePageState::Start); + self.free_page_state.replace(FreePageState::Start); + #[cfg(not(feature = "omit_autovacuum"))] + { + self.ptrmap_get_state.replace(PtrMapGetState::Start); + self.ptrmap_put_state.replace(PtrMapPutState::Start); + self.btree_create_vacuum_full_state + .replace(BtreeCreateVacuumFullState::Start); + } + + self.header_ref_state.replace(HeaderRefState::Start); } pub fn with_header(&self, f: impl Fn(&DatabaseHeader) -> T) -> Result> {