LightRAG/lightrag/kg
BukeLy 18a4870229 fix: Add default workspace support for backward compatibility
Fixes two compatibility issues in workspace isolation:

1. Problem: lightrag_server.py calls initialize_pipeline_status()
   without workspace parameter, causing pipeline to initialize in
   global namespace instead of rag's workspace.

   Solution: Add set_default_workspace() mechanism in shared_storage.
   LightRAG.initialize_storages() now sets default workspace, which
   initialize_pipeline_status() uses when called without parameters.

2. Problem: /health endpoint hardcoded to use "pipeline_status",
   cannot return workspace-specific status or support frontend
   workspace selection.

   Solution: Add LIGHTRAG-WORKSPACE header support. Endpoint now
   extracts workspace from header or falls back to server default,
   returning correct workspace-specific pipeline status.

Changes:
- lightrag/kg/shared_storage.py: Add set/get_default_workspace()
- lightrag/lightrag.py: Call set_default_workspace() in initialize_storages()
- lightrag/api/lightrag_server.py: Add get_workspace_from_request() helper,
  update /health endpoint to support LIGHTRAG-WORKSPACE header

Testing:
- Backward compatibility: Old code works without modification
- Multi-instance safety: Explicit workspace passing preserved
- /health endpoint: Supports both default and header-specified workspaces

Related: #2353
2025-11-17 12:54:20 +08:00
..
deprecated Preserve ordering in get_by_ids methods across all storage implementations 2025-10-11 12:37:59 +08:00
__init__.py Improve storage config validation and add config.ini fallback support 2025-11-08 22:48:49 +08:00
faiss_impl.py Fix get_by_ids to return None for missing records consistently 2025-10-11 13:34:26 +08:00
json_doc_status_impl.py Add entity/relation chunk tracking with configurable source ID limits 2025-10-20 15:24:15 +08:00
json_kv_impl.py Add entity/relation chunk tracking with configurable source ID limits 2025-10-20 15:24:15 +08:00
memgraph_impl.py Remove unused chunk-based node/edge retrieval methods 2025-11-06 18:17:10 +08:00
milvus_impl.py Remove enable_logging parameter from get_data_init_lock call in MilvusVectorDBStorage 2025-10-29 09:49:59 +08:00
mongo_impl.py Remove unused chunk-based node/edge retrieval methods 2025-11-06 18:17:10 +08:00
nano_vector_db_impl.py Fix vector deletion logging to show actual deleted count 2025-10-27 14:22:16 +08:00
neo4j_impl.py Remove unused chunk-based node/edge retrieval methods 2025-11-06 18:17:10 +08:00
networkx_impl.py Remove unused chunk-based node/edge retrieval methods 2025-11-06 18:17:10 +08:00
postgres_impl.py Fix linting 2025-11-06 20:48:51 +08:00
qdrant_impl.py Add Qdrant legacy collection migration with workspace support 2025-10-30 19:16:33 +08:00
redis_impl.py Fix Redis data migration error 2025-10-21 16:27:04 +08:00
shared_storage.py fix: Add default workspace support for backward compatibility 2025-11-17 12:54:20 +08:00