[
https://issues.apache.org/jira/browse/FELIX-5264?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
David Jencks resolved FELIX-5264.
---------------------------------
Resolution: Fixed
Fix Version/s: scr-2.0.4
r1746617 fixes the specific problem found here and introduces a single State
enum with some optimistic locking and enough logging so any remaining or new
problems should be easier to diagnose.
> [DS] Config updates may be missed
> ---------------------------------
>
> Key: FELIX-5264
> URL: https://issues.apache.org/jira/browse/FELIX-5264
> Project: Felix
> Issue Type: Bug
> Components: Declarative Services (SCR)
> Affects Versions: scr-2.0.2
> Reporter: David Jencks
> Assignee: David Jencks
> Fix For: scr-2.0.4
>
>
> If two threads are trying to activate a component concurrently, it's possible
> that one enters validateDependencyManagers, determines that a dependency is
> missing (so it thinks state should be unsatisfied), then wait, and the other
> thread the missing dependency arrives and activates the component, then the
> first thread resumes and sets m_satisfied to false. So there's a fully
> activated component with m_satisfied false. When a configuration update
> comes in it resets the target filters but then tries to activate the
> component.... which does nothing as it's already activated. So the
> configuration update does not get applied.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)