You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Carsten Ziegeler (JIRA)" <ji...@apache.org> on 2015/09/11 09:35:46 UTC
[jira] [Updated] (FELIX-5028) ServiceFactory for components might
return null
[ https://issues.apache.org/jira/browse/FELIX-5028?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Carsten Ziegeler updated FELIX-5028:
------------------------------------
Attachment: simple_fix.patch
This is a simple fix which might solve the problem. Not sure if this should be the final solution
> ServiceFactory for components might return null
> -----------------------------------------------
>
> Key: FELIX-5028
> URL: https://issues.apache.org/jira/browse/FELIX-5028
> Project: Felix
> Issue Type: Bug
> Components: Declarative Services (SCR)
> Affects Versions: scr-2.0.0
> Reporter: Carsten Ziegeler
> Fix For: scr-2.0.2
>
> Attachments: simple_fix.patch
>
>
> There seems to be an uneven handling of locking/status information in getService/ungetService of the service factory registered by the SingleComponentManager. (I didn't check the other factories)
> We have a concurrent get/ungetService for the same service. While the unget service uses a lock around decrementing the counter, incrementing the counter and other actions in getService are not using the lock. There is a partial lock there.
> But this can lead to the problem that while the preconditions for getService are still fine, ungetService cleans up which then makes getService to return null.
> We have a huge app where we can reproduce the problem, I'll try to trim this down to a simple test case.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)