quickwit-oss/quickwit · error
Quickwit was compiled without the `kafka` feature
Error message
Quickwit was compiled without the `kafka` feature
What it means
check_source_connectivity validates that a Kafka source can reach its brokers, but the binary was built without the `kafka` cargo feature, so the Kafka source implementation (and its connectivity check) is not compiled in. The function bails immediately when SourceParams::Kafka is matched under `#[cfg(not(feature = "kafka"))]`. This is a compile-time feature gating error, not a runtime network problem.
Source
Thrown at quickwit/quickwit-indexing/src/source/mod.rs:466
Ok(())
}
#[allow(unused_variables)]
SourceParams::File(FileSourceParams::Notifications(FileSourceNotification::Sqs(
sqs_config,
))) => {
#[cfg(not(feature = "sqs"))]
anyhow::bail!("Quickwit was compiled without the `sqs` feature");
#[cfg(feature = "sqs")]
{
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(())
}
}View on GitHub (pinned to a39730c5cd)
Solutions
- Rebuild Quickwit with the kafka feature enabled, e.g. `cargo build --features kafka` (or use a release binary built with it).
- If Kafka is not intended, change or remove the Kafka source from the index configuration.
- Verify the deployed binary supports Kafka before adding the source (check build features or docs).
Example fix
// before (build without feature) cargo build --release // after cargo build --release --features kafka
Defensive patterns
Strategy: validation
Validate before calling
// Check build features before configuring a Kafka source
if !quickwit_build_has_feature("kafka") {
return Err(anyhow::anyhow!("binary lacks `kafka` feature; rebuild with --features kafka"));
} Prevention
- Match deployment build features to the source types in your index configs.
- Lint index configs against a manifest of enabled features at deploy time.
- Use official binaries built with the required source features.
When it happens
Trigger: Calling check_source_connectivity (directly or via add_source, update_source, or the test-connectivity REST endpoint) with a source whose SourceParams is Kafka while the running Quickwit binary was compiled without `--features kafka`.
Common situations: Running a slim/distroless Quickwit build or official binary without kafka feature enabled; a custom build omitting the feature; a source config referencing Kafka in an index.yaml applied to a feature-stripped deployment.
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 `kinesis` feature
- Quickwit was compiled without the `pulsar` feature
- Quickwit was compiled without the `sqs` feature
- topic `{}` does not exist
- topic `{}` has no partitions
AI-assisted analysis of quickwit-oss/quickwit@a39730c5cd (2026-09-08).
Data as JSON: /api/errors/e141bdb000b056bb.
Report an issue: GitHub.