Conversation
… async backends Six stub backends (BagelDB, Clarifai, DashVector, Databricks Vector Search, DingoDB, Epsilla) each carried a trailing block of synchronous `add`/`search`/`delete` placeholder methods appended after their proper async implementations. The sync `search` placeholder shadowed the already-present `async def search(...)`, so the live method no longer matched the async VectorStoreBackend interface and dropped the accurate NotImplementedError guidance. `add`/`delete` are not part of the backend interface (it defines add_vectors/delete_vectors) and are unused. Remove the redundant trailing blocks so the async stubs are the live methods again. Signed-off-by: Tai An <antai12232931@outlook.com>
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Six stub vector-store backends each carry a trailing block of synchronous
add/search/deleteplaceholder methods appended after their proper async implementations:bageldb.py,clarifai.py,dashvector.py,databricks_vector_search.py,dingo.py,epsilla.pyBecause the sync
def search(...)comes last, it shadows the already-presentasync def search(...)earlier in the same class. The livesearchtherefore:VectorStoreBackend.searchinterface (base.py), soawait backend.search(...)no longer awaits a coroutine.pyflakesflags the shadow directly, e.g.:The accompanying
add/deleteplaceholders are not part of the backend interface either — it definesadd_vectors/delete_vectors(both already implemented as async in these files) — and are not referenced anywhere in the codebase.Fix
Remove the redundant trailing placeholder blocks so the proper async stub methods are the live ones again. No behavior is lost (both variants only raise
NotImplementedError); the interface-conformant asyncsearchand its accurate guidance message are restored.+0 / −104, six files.pyflakesno longer reports any redefinition in these modules and all six still compile.🤖 Generated with Claude Code