quickwit-oss/quickwit · error
Quickwit was compiled without the `kinesis` feature
Error message
Quickwit was compiled without the `kinesis` feature
What it means
The same feature-gating pattern as Kafka: when SourceParams::Kinesis is matched and the binary was compiled without the `kinesis` cargo feature, check_source_connectivity bails because the Kinesis source code was not built in. The Kinesis connectivity check simply does not exist in this binary.
Source
Thrown at quickwit/quickwit-indexing/src/source/mod.rs:477
queue_sources::sqs_queue::check_connectivity(&sqs_config.queue_url).await?;
Ok(())
}
}
#[allow(unused_variables)]
SourceParams::Kafka(params) => {
#[cfg(not(feature = "kafka"))]
anyhow::bail!("Quickwit was compiled without the `kafka` feature");
#[cfg(feature = "kafka")]
{
kafka_source::check_connectivity(params.clone()).await?;
Ok(())
}
}
#[allow(unused_variables)]
SourceParams::Kinesis(params) => {
#[cfg(not(feature = "kinesis"))]
anyhow::bail!("Quickwit was compiled without the `kinesis` feature");
#[cfg(feature = "kinesis")]
{
kinesis::check_connectivity(params.clone()).await?;
Ok(())
}
}
#[allow(unused_variables)]
SourceParams::Pulsar(params) => {
#[cfg(not(feature = "pulsar"))]
anyhow::bail!("Quickwit was compiled without the `pulsar` feature");
#[cfg(feature = "pulsar")]
{
pulsar_source::check_connectivity(params).await?;
Ok(())
}
}View on GitHub (pinned to a39730c5cd)
Solutions
- Rebuild/redeploy Quickwit with `--features kinesis` enabled.
- Remove the Kinesis source from the index configuration if Kinesis ingestion is not needed.
- Validate source types against build features during deployment/config linting before applying index configs.
Example fix
// before cargo build --release // after cargo build --release --features kinesis
Defensive patterns
Strategy: validation
Validate before calling
// Verify Kinesis support before applying a kinesis source config
if !quickwit_build_has_feature("kinesis") {
return Err(anyhow::anyhow!("binary lacks `kinesis` feature; rebuild with --features kinesis"));
} Prevention
- Document the feature set of each deployed binary variant.
- Run add_source/test-connectivity in a staging environment with the same build as production.
- Avoid mixing full-featured and trimmed builds in the same cluster.
When it happens
Trigger: Calling check_source_connectivity (via run_index_checklist, add_source, update_source, or the REST test-connectivity endpoint) on a Kinesis source in a binary built without `--features kinesis`.
Common situations: Deploying a Quickwit build without the kinesis feature (often excluded to reduce binary size/AWS SDK deps) while the index config still declares a kinesis source; switching from a full build to a trimmed build.
Understand the failure class
Background: "X is not installed. Please install it with pip install Y": missing optional dependency errors — ImportError/ValueError raised when a library's optional extra was never installed — this error's family across 22 libraries.
Related errors
- Quickwit was compiled without the `kafka` feature
- Quickwit was compiled without the `pulsar` feature
- Quickwit was compiled without the `sqs` feature
- unable to sniff region from environment
- Quickwit was compiled without the `sqs` feature
AI-assisted analysis of quickwit-oss/quickwit@a39730c5cd (2026-09-08).
Data as JSON: /api/errors/d35e0df89ad796c0.
Report an issue: GitHub.