From f105a2224a5891ee8e1b3f9a31143165aef82429 Mon Sep 17 00:00:00 2001 From: Mubelotix Date: Fri, 1 Aug 2025 11:04:48 +0200 Subject: [PATCH] Clarify fields_unused Co-Authored-By: Louis Dureuil --- crates/meilisearch/src/routes/indexes/render.rs | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/crates/meilisearch/src/routes/indexes/render.rs b/crates/meilisearch/src/routes/indexes/render.rs index be495bb2b..6ac0a939c 100644 --- a/crates/meilisearch/src/routes/indexes/render.rs +++ b/crates/meilisearch/src/routes/indexes/render.rs @@ -490,15 +490,21 @@ async fn render(index: Index, query: RenderQuery) -> Result { + // might be a false positive if fields appear as a non-variable + // it is OK to be over-eager here, it will just translate to more work + !template.contains("fields") + } + None => true, // non-text templates cannot use `fields` + }; let has_inline_doc = query .input .as_ref() .is_some_and(|i| i.inline.as_ref().is_some_and(|i| i.get("doc").is_some())); let has_document_id = query.input.as_ref().is_some_and(|i| i.document_id.is_some()); let has_doc = has_inline_doc || has_document_id; - let insert_fields = - fields_available && has_doc && fields_probably_used && !fields_already_present; + let insert_fields = fields_available && has_doc && !fields_unused && !fields_already_present; if has_inline_doc && has_document_id { return Err(BothInlineDocAndDocId.into()); }