felix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Felix Meschberger (JIRA)" <j...@apache.org>
Subject [jira] Closed: (FELIX-464) Cannot retrieve service to be unbound in unbind method taking ServiceReference
Date Tue, 15 Jan 2008 12:26:34 GMT

     [ https://issues.apache.org/jira/browse/FELIX-464?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Felix Meschberger closed FELIX-464.
-----------------------------------

       Resolution: Fixed
    Fix Version/s: 1.0.0

Fixed in Rev. 612093 and deployed new SNAPSHOT 0.9.0-20080115.122018-10

> Cannot retrieve service to be unbound in unbind method taking ServiceReference
> ------------------------------------------------------------------------------
>
>                 Key: FELIX-464
>                 URL: https://issues.apache.org/jira/browse/FELIX-464
>             Project: Felix
>          Issue Type: Bug
>          Components: Declarative Services
>            Reporter: Felix Meschberger
>            Assignee: Felix Meschberger
>             Fix For: 1.0.0
>
>
> Sometimes, the service about to be unbound needs to be retrieved from the ComponentContext
if the unbind method takes the ServiceReference instead of the service object itself. In these
cases, the service fails to be returned because the AbstractComponentManager.getDependencyManager(String)
only returns DependencyManager instances whose size is not zero.
> This now constitutes a race condition, as the service count has already been decremented
in the DependencyManager when the unbind method is called. The service itself, though, is
actually still available.
> The fix is to always return any available DependencyManager regardless of the perceived
size. The DependencyManager will then return the service or not dependending on whether the
service is still available.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message