fix: honor compaction cancellation and replay identity
This commit is contained in:
@@ -5291,6 +5291,10 @@ impl<C: LlmClient + 'static, St: Store> Worker<C, St> {
|
||||
info!(new_segment_id = %new_segment_id, "Manual compaction succeeded");
|
||||
Ok(ManualCompactResult::Compacted { new_segment_id })
|
||||
}
|
||||
Err(WorkerError::CompactCancelled) => {
|
||||
info!("Manual compaction was cancelled");
|
||||
Err(WorkerError::CompactCancelled)
|
||||
}
|
||||
Err(e) => {
|
||||
warn!(error = %e, "Manual compaction failed");
|
||||
self.alert(
|
||||
|
||||
@@ -1736,7 +1736,11 @@ async fn manual_compact_cancel_clears_progress_before_returning_idle() {
|
||||
Event::CompactionProgress { compaction: None } => {
|
||||
saw_interrupted = true;
|
||||
}
|
||||
Event::Error { .. } => saw_cancel_error = true,
|
||||
Event::Error { .. }
|
||||
| Event::Alert(protocol::Alert {
|
||||
level: protocol::AlertLevel::Error,
|
||||
..
|
||||
}) => saw_cancel_error = true,
|
||||
Event::WorkerState { snapshot }
|
||||
if snapshot.catalog_status() == protocol::WorkerStatus::Idle =>
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user