Skip to content
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

Implemented readonly-/ramdb preloading #3078

Open
wants to merge 63 commits into
base: develop
Choose a base branch
from

Conversation

DrizztDoUrden
Copy link
Contributor

@DrizztDoUrden DrizztDoUrden commented Jun 25, 2024

If convolution perf and find dbs have not been started loading yet, handle constructor starts a separate thread that does that. When a db is requested in some library call like find, instead of just creating a new instance it first checks if preload has started and waits for its result if needed.

src/handle_common.cpp Outdated Show resolved Hide resolved
src/handle_common.cpp Outdated Show resolved Hide resolved
@DrizztDoUrden DrizztDoUrden changed the title Implemented readonly-/ramdb reloading Implemented readonly-/ramdb preloading Aug 12, 2024
DrizztDoUrden and others added 10 commits September 13, 2024 12:40
Changed DbPreloadStates to be stored as shared_ptr to prevent them being desctructed while still in use
Changed related stop_source to be used correctly
Added a mutex to DbPreloadStates dtor to prevent it from executing while it is still being initialized, moved related thread construction under the mutex as well
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants