Skip to content

Commit e6939f8

Browse files
committed
fix checkpointer shutdown
the checkpointer was shutting down before finishing processing incoming messages.
1 parent 48af2ee commit e6939f8

1 file changed

Lines changed: 3 additions & 0 deletions

File tree

libsql-wal/src/checkpointer.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -135,6 +135,7 @@ where
135135

136136
fn should_exit(&self) -> bool {
137137
self.shutting_down
138+
&& self.recv.is_empty()
138139
&& self.scheduled.is_empty()
139140
&& self.checkpointing.is_empty()
140141
&& self.join_set.is_empty()
@@ -158,9 +159,11 @@ where
158159
notified = self.recv.recv(), if !self.shutting_down => {
159160
match notified {
160161
Some(CheckpointMessage::Namespace(namespace)) => {
162+
tracing::info!(namespace = namespace.as_str(), "notified for checkpoint");
161163
self.scheduled.insert(namespace);
162164
}
163165
None | Some(CheckpointMessage::Shutdown) => {
166+
tracing::info!("checkpointed is shutting down. {} namespaces to checkpoint", self.checkpointing.len());
164167
self.shutting_down = true;
165168
}
166169
}

0 commit comments

Comments
 (0)