Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
Description
In the original approach configuration objects were not thread-safe. In later versions, more and more synchronization was added to support concurrent access to configuration properties, even when reloads occurred.
Unfortunately, the current implementation is not very clean and has a lot of problems. There a several bug reports related to this topic. Therefore, version 2.0 which will break backwards compatibility is a good opportunity to introduce a new concept for synchronization.
Of course, the new approach should be easier, cleaner, and customizable. I would also like to have an option to avoid synchronization completely if this is not required for a specific use case. Maybe a similar pattern as used by the Java collections framework can be applied: per default, configurations are not thread-safe, but there is an option to add synchronization so that they can be accessed concurrently.
Attachments
Issue Links
- is related to
-
CONFIGURATION-530 AbstractFileConfiguration.getProperty(String key) locking causes thread halt
- Closed
-
CONFIGURATION-496 Excessive Synchronization AbstractFileConfiguration
- Closed
-
CONFIGURATION-330 Thread safety for file based configurations
- Closed