Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
Remove DB Configuration Locking #791
As @KyleSanderson asked, I attempted to remove configuration locking in favor of a refcounted structure. I'm a multi-threading novice, and this should be heavily reviewed before any approval.
The idea behind this is that different threads can ask for a specific config, and that configuration file it returns will be grabbed from the latest parse. Because we now have two lists in
Without the refcounting, and with the expected use being something like:
I do not see how this could be safe.
It would be perfectly legal for the main thread to be reloading the database config, preempt a worker thread between those two lines and trash the returned
The cleaner organization and ownership is good, but I think this (in its current iteration) has possibly removed the safety along with the locking, rather than leaving the safety behind.
EDIT: Threaded access to the config list was removed, this is all wrong.