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] Commented: (FELIX-1185) If a static/mandatory reference to a service is unregistered, the component should be deactivated synchronously instead of asynchronously
Date Wed, 03 Jun 2009 10:48:07 GMT

    [ https://issues.apache.org/jira/browse/FELIX-1185?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12715897#action_12715897
] 

Felix Meschberger commented on FELIX-1185:
------------------------------------------

> And for the safety of the double check, it's better to add "volatile" modifier to the
AbstractComponentManager.m_state . 

Done in Rev. 781336

> If a static/mandatory reference to a service is unregistered, the component should be
deactivated synchronously instead of asynchronously
> -----------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: FELIX-1185
>                 URL: https://issues.apache.org/jira/browse/FELIX-1185
>             Project: Felix
>          Issue Type: Bug
>          Components: Declarative Services (SCR)
>    Affects Versions: scr-1.0.8
>            Reporter: Agemo Cui
>            Assignee: Felix Meschberger
>             Fix For: scr-1.0.10
>
>         Attachments: AbstractComponentManager.java, AbstractComponentManager.java, ComponentFactoryImpl.java,
scr-changes on revision 778604.zip
>
>
> In the specification cmpn 112.3.3 Reference Policy, it says "Component configurations
are deactivated before any bound service for a reference having a static policy becomes unavailable."
> My understanding is the deactivate method of the component must be called before any
unbind method for a static/mandatory reference is called. And it's reasonable for a static/mandatory
reference to be still available in the deactivate method.
> If the component is deactivated asynchronously when a static/mandatory reference to a
service is unregistered, then it's possible that the unbind method is called before the deactivate
method is called, which makes the service unavailable in the deactivate method.
> This bug may relate to FELIX-1178.
> The fix for this bug should also fix FELIX-1178. No need to add a new flag.

-- 
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