few checkpoint result cleanup in vdbe

This commit is contained in:
Pere Diaz Bou
2025-03-12 15:41:28 +01:00
parent f9916e8149
commit cc320a74ca

View File

@@ -3227,19 +3227,20 @@ impl Program {
let checkpoint_status = pager.end_tx()?;
match checkpoint_status {
CheckpointStatus::Done(_) => {
if self.change_cnt_on {
if let Some(conn) = self.connection.upgrade() {
conn.set_changes(self.n_change.get());
}
}
connection.transaction_state.replace(TransactionState::None);
let _ = halt_state.take();
}
CheckpointStatus::IO => {
tracing::trace!("Checkpointing IO");
*halt_state = Some(HaltState::Checkpointing);
return Ok(StepResult::IO);
}
}
if self.change_cnt_on {
if let Some(conn) = self.connection.upgrade() {
conn.set_changes(self.n_change.get());
}
}
Ok(StepResult::Done)
}
}