{"record":{"id":"f45d2be14cd3b7dd","repo":"quickwit-oss/quickwit","slug":"facets-are-not-supported-by-quickwit-at-the-moment","errorCode":null,"errorMessage":"Facets are not supported by quickwit at the moment.","messagePattern":"Facets are not supported by quickwit at the moment\\.","errorType":"panic","errorClass":null,"httpStatus":null,"severity":"error","filePath":"quickwit/quickwit-doc-mapper/src/doc_mapper/field_mapping_type.rs","lineNumber":139,"sourceCode":"        \"bytes\" => Some(Type::Bytes),\n        \"json\" => Some(Type::Json),\n        _unknown_type => None,\n    }\n}\n\nfn primitive_type_to_str(primitive_type: &Type) -> &'static str {\n    match primitive_type {\n        Type::Str => \"text\",\n        Type::U64 => \"u64\",\n        Type::I64 => \"i64\",\n        Type::F64 => \"f64\",\n        Type::Bool => \"bool\",\n        Type::IpAddr => \"ip\",\n        Type::Date => \"datetime\",\n        Type::Bytes => \"bytes\",\n        Type::Json => \"json\",\n        Type::Facet => {\n            unimplemented!(\"Facets are not supported by quickwit at the moment.\")\n        }\n        // Quickwit mappings cannot construct custom field types.\n        Type::Custom => unimplemented!(\"custom fields are not supported in Quickwit\"),\n    }\n}\n\n#[cfg(test)]\nmod tests {\n    use tantivy::schema::Type;\n\n    use super::QuickwitFieldType;\n\n    #[track_caller]\n    fn test_parse_type_aux(type_str: &str, expected: Option<QuickwitFieldType>) {\n        let quickwit_field_type = QuickwitFieldType::parse_type_id(type_str);\n        assert_eq!(quickwit_field_type, expected);\n    }\n","sourceCodeStart":121,"sourceCodeEnd":157,"githubUrl":"https://github.com/quickwit-oss/quickwit/blob/a39730c5cdcd1a4fe798403737ae293999ea21f8/quickwit/quickwit-doc-mapper/src/doc_mapper/field_mapping_type.rs#L121-L157","documentation":"A field mapped with the `facet` type reached the type-name serialization helper `primitive_type_to_str`, which has no string representation for `Type::Facet`; the macro panics because facet support is simply not implemented in Quickwit. It fires whenever a facet-typed field in the doc mapping is converted to its type identifier string (via to_type_id), not at mapping parse time.","triggerScenarios":"Thrown at quickwit/quickwit-doc-mapper/src/doc_mapper/field_mapping_type.rs:139 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Remove the facet-typed field from the index doc mapping and use a text field with the raw tokenizer or a u64/i64 field instead","Search or aggregate on a supported primitive type (text, u64, i64, f64, bool, ip, datetime, bytes, json)"],"exampleFix":null,"handlingStrategy":"type-guard","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"a39730c5cdcd1a4fe798403737ae293999ea21f8","analyzedAt":"2026-09-08T13:19:37.784Z","contentChangedAt":"2026-09-08T13:19:37.784Z","schemaVersion":2},"datasetVersion":"2026-09-14T11:17:12.474Z"}