From 6bb18672a44b5664a8202f8763e33dc84d1ce1a3 Mon Sep 17 00:00:00 2001 From: Marco Neumann Date: Mon, 28 Feb 2022 09:30:42 +0000 Subject: [PATCH] fix: do not ignore failed persist tasks (#3866) I'm seeing some panics in our test bench, but it the ingester happily continues and thinks it persisted tasks even though it didn't. Let's at least bail out if a persist task fails. --- ingester/src/lifecycle.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ingester/src/lifecycle.rs b/ingester/src/lifecycle.rs index bfe6fc00fa..4157f1389c 100644 --- a/ingester/src/lifecycle.rs +++ b/ingester/src/lifecycle.rs @@ -253,7 +253,10 @@ impl LifecycleManager { if !persist_tasks.is_empty() { let persists = futures::future::join_all(persist_tasks.into_iter()); - persists.await; + let results = persists.await; + for res in results { + res.expect("not aborted").expect("task finished"); + } // for the sequencers that had data persisted, update their min_unpersisted_sequence_number to // either the minimum remaining in everything that didn't get persisted, or the highest