Why this change is needed: To implement vector storage model isolation for Qdrant, allowing different workspaces to use different embedding models without conflict, and automatically migrating existing data. How it solves it: - Modified QdrantVectorDBStorage to use model-specific collection suffixes - Implemented automated migration logic from legacy collections to new schema - Fixed Shared-Data lock re-entrancy issue in multiprocess mode - Added comprehensive tests for collection naming and migration triggers Impact: - Existing users will have data automatically migrated on next startup - New workspaces will use isolated collections based on embedding model - Fixes potential lock-related bugs in shared storage Testing: - Added tests/test_qdrant_migration.py passing - Verified migration logic covers all 4 states (New/Legacy existence combinations) |
||
|---|---|---|
| .. | ||
| deprecated | ||
| __init__.py | ||
| faiss_impl.py | ||
| json_doc_status_impl.py | ||
| json_kv_impl.py | ||
| memgraph_impl.py | ||
| milvus_impl.py | ||
| mongo_impl.py | ||
| nano_vector_db_impl.py | ||
| neo4j_impl.py | ||
| networkx_impl.py | ||
| postgres_impl.py | ||
| qdrant_impl.py | ||
| redis_impl.py | ||
| shared_storage.py | ||