{"record":{"id":"78d4bbc650fd93fe","repo":"risingwavelabs/risingwave","slug":"no-index-found-for-batchvectorsearchlookupjoin","errorCode":null,"errorMessage":"no index found for BatchVectorSearchLookupJoin","messagePattern":"no index found for BatchVectorSearchLookupJoin","errorType":"error_code","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/frontend/src/optimizer/plan_node/logical_vector_search_lookup_join.rs","lineNumber":378,"sourceCode":"                include_distance: self.core.include_distance,\n                as_of,\n                vector_column_idx: self.core.input_vector_col_idx,\n                hnsw_ef_search,\n                ctx: self.core.ctx(),\n            };\n            return Ok(Some(core));\n        }\n        Ok(None)\n    }\n}\n\nimpl ToBatch for LogicalVectorSearchLookupJoin {\n    fn to_batch(&self) -> Result<BatchPlanRef> {\n        if let Some(core) = self.to_vector_index_lookup_join(|plan| plan.to_batch())? {\n            return Ok(BatchVectorSearch::with_core(core).into());\n        }\n\n        bail!(\"no index found for BatchVectorSearchLookupJoin\")\n    }\n}\n","sourceCodeStart":360,"sourceCodeEnd":381,"githubUrl":"https://github.com/risingwavelabs/risingwave/blob/6469eb736d691e8e9b8a419a57edd6429ca77417/src/frontend/src/optimizer/plan_node/logical_vector_search_lookup_join.rs#L360-L381","documentation":"Raised in LogicalVectorSearchLookupJoin::to_batch when to_vector_index_lookup_join returns None, i.e. no vector index matching the query's vector column and distance type exists on the lookup table, so the batch vector search plan cannot be constructed.","triggerScenarios":"Thrown at src/frontend/src/optimizer/plan_node/logical_vector_search_lookup_join.rs:378 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Create a vector index covering the queried vector column and distance function before issuing the batch vector search lookup join.","Check that the query's ORDER BY ... <-> / distance expression matches the index definition."],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"6469eb736d691e8e9b8a419a57edd6429ca77417","analyzedAt":"2026-09-11T21:06:21.487Z","contentChangedAt":"2026-09-11T21:06:21.487Z","schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}