Skip to content

fix: exists() depends on exact FT.INFO error wording; an unrecognised "missing index" message makes create() never creat - #782

Open
nandanadileep wants to merge 1 commit into
redis:mainfrom
nandanadileep:oss-harness/issue-773
Open

nandanadileep wants to merge 1 commit into
redis:mainfrom
nandanadileep:oss-harness/issue-773

Conversation

@nandanadileep

@nandanadileep nandanadileep commented Oct 23, 2026 •

Copy link
Copy Markdown

Fixes #773.

Focused Python fix for: exists() depends on exact FT.INFO error wording; an unrecognised "missing index" message makes create() never create the index (regression from #672)

Changed implementation: redisvl/exceptions.py.
Regression tests: tests/unit/test_index_exists.py.

Verification (working directory .): .venv/bin/python -m pytest -q -x -p no:cacheprovider -- /workspace/tests/unit/test_index_exists.py

  • Patched code: 14 tests, zero failures/errors.
  • Original code with the same regression tests: 1 failures, zero collection/setup errors.
  • Base commit: 1188d0a987aa2dfb415707522fa7fe95d2143255.

AI-assisted contribution: OpenCode using Autoloops wrote this patch. The automated harness independently ran the tests listed above. No human review is claimed.


Note

Low Risk
Narrow change to error-string matching for absent indexes; slightly broader substring match but covered by existing non-missing-index regression tests.

Overview
Extends missing-index detection for FT.INFO failures so Valkey Search (e.g. ElastiCache) is treated like Redis Search when an index does not exist.

Adds the fragment "not found in database" to _MISSING_INDEX_ERROR_FRAGMENTS, covering messages such as Index with name '…' not found in database 0 where the index name sits between “index” and “not found” and the old "index not found" substring did not match. A parametrized unit test documents that wording so exists() returns False instead of surfacing an unclassified error—which after #672 could block create() from ever creating the index.

Reviewed by Cursor Bugbot for commit 72a2487. Bugbot is set up for automated code reviews on this repo. Configure here.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

exists() depends on exact FT.INFO error wording; an unrecognised "missing index" message makes create() never create the index (regression from #672)

1 participant