Configuration may be supplied twice in certain situations ---------------------------------------------------------
Key: FELIX-1542 URL: https://issues.apache.org/jira/browse/FELIX-1542 Project: Felix Issue Type: Bug Components: Conditional Permission Admin, Specification compliance Affects Versions: configadmin-1.2.0, configadmin-1.2.2 Reporter: Felix Meschberger Assignee: Felix Meschberger Fix For: configadmin-1.2.4 An issue reported in FELIX-1146 and presumably fixed in configadmin 1.2.0 is not really fixed: With the fix for 1.2.0 in Rev. 805668 the window for the race condition is much smaller than before, but it still exists: Consider this: T1. create and update configuration ConfigurationImpl.update persists configuration and sets field Thread preempted T2. ManagedServiceUpdate constructor reads configuration Uses configuration already persisted by T1 for update Schedules task to update service with the configuration T1. Runs again creating the UpdateConfiguration task with the configuration persisted earlier Schedules task to update service UpdateTask: updates ManagedService with configuration prepared by T2 updates ManagedService with configuration prepared by T1 In this small window a race condition occurred, which caused the ManagedService to be supplied with the same configuration twice. It would have been ok for the ManagedService to first get null (for the service registration and configuration not available yet) and in a second call to get the configuration. But it is not ok to get the same configuration twice. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.