-
Notifications
You must be signed in to change notification settings - Fork 1.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Refactor Database Connection Management and Improve Storage Lifecycle Handling #846
Merged
YanSte
merged 8 commits into
HKUDS:main
from
ArnoChenFx:db-connection-and-storage-lifecycle
Feb 18, 2025
Merged
Refactor Database Connection Management and Improve Storage Lifecycle Handling #846
YanSte
merged 8 commits into
HKUDS:main
from
ArnoChenFx:db-connection-and-storage-lifecycle
Feb 18, 2025
Conversation
This file contains 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
YanSte
reviewed
Feb 18, 2025
Thanks a lot, I will have a look. 🙏🏻 |
YanSte
reviewed
Feb 18, 2025
Really nice feature 🙏🏻 |
YanSte
reviewed
Feb 18, 2025
Let me know when is good I will test it directly. |
It‘s ready for test! |
Let's go, I merge it. In case of issues we update directly. |
Got some error see my issue: #849 |
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.
This PR refactors the database connection management for PostgreSQL, Oracle, and TiDB by introducing a
ClientManager
class. It also enhances the lifecycle management of storage components inLightRAG
, ensuring consistency and better maintainability.Key Changes:
Unified Database Initialization for All Backends:
lightrag_server
environment. This update ensures that all backends now exhibit consistent behavior.Decoupled Backend Implementations from
lightrag_server
:lightrag_server
explicitly imported and initialized PostgreSQL, Oracle, and TiDB, which increased backend maintenance complexity and violated the principle of backend isolation.Improved Storage Lifecycle Management:
initialize()
andfinalize()
methods toStorageNameSpace
to handle storage setup and cleanup.LightRAG
now explicitly manages storage lifecycle withinitialize_storages()
andfinalize_storages()
, ensuring proper resource management.Benefits:
Testing: