{"record":{"id":"3a2f2bd91fdac2ec","repo":"weaviate/weaviate","slug":"cannot-vector-search-on-a-class-not-vector-indexed","errorCode":null,"errorMessage":"cannot vector-search on a class not vector-indexed","messagePattern":"cannot vector-search on a class not vector-indexed","errorType":"validation","errorClass":null,"httpStatus":422,"severity":"error","filePath":"adapters/repos/db/vector/noop/index.go","lineNumber":73,"sourceCode":"}\n\nfunc (i *Index) AddMulti(ctx context.Context, docId uint64, vector [][]float32) error {\n\t// silently ignore\n\treturn nil\n}\n\nfunc (i *Index) Delete(id ...uint64) error {\n\t// silently ignore\n\treturn nil\n}\n\nfunc (i *Index) DeleteMulti(id ...uint64) error {\n\t// silently ignore\n\treturn nil\n}\n\nfunc (i *Index) SearchByVector(ctx context.Context, vector []float32, k int, allow helpers.AllowList) ([]uint64, []float32, error) {\n\treturn nil, nil, errors.Errorf(\"cannot vector-search on a class not vector-indexed\")\n}\n\nfunc (i *Index) SearchByMultiVector(ctx context.Context, vector [][]float32, k int, allow helpers.AllowList) ([]uint64, []float32, error) {\n\treturn nil, nil, errors.Errorf(\"cannot vector-search on a class not vector-indexed\")\n}\n\nfunc (i *Index) SearchByVectorDistance(ctx context.Context, vector []float32, dist float32, maxLimit int64, allow helpers.AllowList) ([]uint64, []float32, error) {\n\treturn nil, nil, errors.Errorf(\"cannot vector-search on a class not vector-indexed\")\n}\n\nfunc (i *Index) SearchByMultiVectorDistance(ctx context.Context, vector [][]float32, dist float32, maxLimit int64, allow helpers.AllowList) ([]uint64, []float32, error) {\n\treturn nil, nil, errors.Errorf(\"cannot multi-vector-search on a class not vector-indexed\")\n}\n\nfunc (i *Index) UpdateUserConfig(updated schemaConfig.VectorIndexConfig, callback func()) error {\n\tcallback()\n\tswitch t := updated.(type) {\n\tcase hnswconf.UserConfig:","sourceCodeStart":55,"sourceCodeEnd":91,"githubUrl":"https://github.com/weaviate/weaviate/blob/75aa4b6d11f8818305aafd4440b4e32794f7ca04/adapters/repos/db/vector/noop/index.go#L55-L91","documentation":"Hard rejection returned by the noop (skip=true) vector index when a vector search is attempted. The index exists only so a non-indexed class can hold objects without vectors; any search call is a programming/configuration error — the class was created with 'skip' set, so there is nothing to search.","triggerScenarios":"Thrown at adapters/repos/db/vector/noop/index.go:73 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Re-create the class without skip=true if vector search is needed, then reimport vectors","Remove the vector-search query path for classes configured with skip","Check client/API usage: GraphQL nearVector or hybrid queries against a skipped class will always fail"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"75aa4b6d11f8818305aafd4440b4e32794f7ca04","analyzedAt":"2026-09-04T14:58:20.392Z","contentChangedAt":"2026-09-04T14:58:20.392Z","schemaVersion":2},"datasetVersion":"2026-09-11T21:17:09.523Z"}