quickwit-oss/quickwit · error

filter aggregation is not yet supported in quickwit

Error message

filter aggregation is not yet supported in quickwit

What it means

A `From<TantivyBucketResult>` conversion for Quickwit's BucketResult encountered an aggregation result variant that Quickwit cannot represent — the filter aggregation, which exists in Tantivy's result enum but is not implemented in Quickwit. The conversion itself is generic; the error signals an unsupported aggregation kind rather than malformed data.

Solutions

  1. Remove the filter aggregation from the search request and apply filtering via the query itself instead
  2. Use a supported bucket aggregation (range, histogram, or terms)
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at quickwit/quickwit-query/src/aggregations.rs:216 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/3c1b43577cd0dd82. Report an issue: GitHub.

Appendix: source

Thrown at quickwit/quickwit-query/src/aggregations.rs:216

    fn from(value: TantivyBucketResult) -> BucketResult {
        match value {
            TantivyBucketResult::Range { buckets } => BucketResult::Range {
                buckets: buckets.into(),
            },
            TantivyBucketResult::Histogram { buckets } => BucketResult::Histogram {
                buckets: buckets.into(),
            },
            TantivyBucketResult::Terms {
                buckets,
                sum_other_doc_count,
                doc_count_error_upper_bound,
            } => BucketResult::Terms {
                buckets: buckets.into_iter().map(Into::into).collect(),
                sum_other_doc_count,
                doc_count_error_upper_bound,
            },
            TantivyBucketResult::Filter(_filter_bucket_result) => {
                unimplemented!("filter aggregation is not yet supported in quickwit")
            }
            TantivyBucketResult::Composite { buckets, after_key } => BucketResult::Composite {
                buckets: buckets.into_iter().map(Into::into).collect(),
                after_key,
            },
            TantivyBucketResult::MultiTerms {
                buckets,
                sum_other_doc_count,
                doc_count_error_upper_bound,
            } => BucketResult::MultiTerms {
                buckets: buckets.into_iter().map(Into::into).collect(),
                sum_other_doc_count,
                doc_count_error_upper_bound,
            },
        }
    }
}

View on GitHub (pinned to a39730c5cd)