quickwit-oss/quickwit · error
{pipeline_exit_status}
Error message
{pipeline_exit_status} What it means
After the merge pipeline was asked to quit, `merge_cli` checked the ActorExitStatus of the indexing pipeline handle; it was neither Success nor Quit, meaning the pipeline terminated because of a failure or panic in one of its actors. The message itself is just the formatted ActorExitStatus, so the root cause is in the pipeline's logs.
Solutions
- Inspect the preceding log lines for the actor error or panic that caused the pipeline failure
- Verify the index, split files, and metastore are accessible and consistent
- Re-run the merge command once the underlying cause is fixed
Defensive patterns
Strategy: retry
When it happens
Trigger: Thrown at quickwit/quickwit-cli/src/tool.rs:666 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of quickwit-oss/quickwit@a39730c5cd (2026-09-08).
Data as JSON: /api/errors/d2027bed1774ba2c.
Report an issue: GitHub.
Appendix: source
Thrown at quickwit/quickwit-cli/src/tool.rs:666
if observation.num_ongoing_merges == 0 {
info!("merge pipeline has no more ongoing merges, exiting");
break;
}
if pipeline_handle.state().is_exit() {
info!("merge pipeline has exited, exiting");
break;
}
}
let (pipeline_exit_status, _pipeline_statistics) = pipeline_handle.quit().await;
indexing_service_handle.quit().await;
if !matches!(
pipeline_exit_status,
ActorExitStatus::Success | ActorExitStatus::Quit
) {
bail!(pipeline_exit_status);
}
println!("{} Merge successful.", "✔".color(GREEN_COLOR));
Ok(())
}
pub async fn garbage_collect_index_cli(args: GarbageCollectIndexArgs) -> anyhow::Result<()> {
debug!(args=?args, "garbage-collect-index");
println!("❯ Garbage collecting index...");
let config = load_node_config(&args.config_uri, None).await?;
let (storage_resolver, metastore_resolver) =
get_resolvers(&config.storage_configs, &config.metastore_configs);
let metastore = metastore_resolver.resolve(&config.metastore_uri).await?;
let mut index_service = IndexService::new(metastore, storage_resolver);
if quickwit_common::is_parquet_pipeline_index(&args.index_id) {
let removal_info = index_service
.garbage_collect_parquet_index(&args.index_id, args.grace_period, args.dry_run)View on GitHub (pinned to a39730c5cd)