When openai_search_vector_store encounters an exception during search (e.g. a KeyError from the vector store backend), it catches the exception, logs it, and returns an empty result set with HTTP 200. The client has no way to distinguish "no matching documents" from "the search failed."
This masks bugs like the milvus-lite 3.0 chunk_content KeyError (#6089), where file_search appears to work but retrieval silently returns nothing.
The catch-all except Exception at openai_vector_store_mixin.py:1123 should re-raise unexpected errors so they surface as 500s to the client.
When
openai_search_vector_storeencounters an exception during search (e.g. a KeyError from the vector store backend), it catches the exception, logs it, and returns an empty result set with HTTP 200. The client has no way to distinguish "no matching documents" from "the search failed."This masks bugs like the milvus-lite 3.0
chunk_contentKeyError (#6089), where file_search appears to work but retrieval silently returns nothing.The catch-all
except Exceptionatopenai_vector_store_mixin.py:1123should re-raise unexpected errors so they surface as 500s to the client.