You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Alin Dreghiciu (JIRA)" <ji...@apache.org> on 2008/12/23 03:15:44 UTC
[jira] Created: (FELIX-862) Services not unregistered on component
deactivation
Services not unregistered on component deactivation
---------------------------------------------------
Key: FELIX-862
URL: https://issues.apache.org/jira/browse/FELIX-862
Project: Felix
Issue Type: Bug
Components: Declarative Services (SCR)
Environment: Felix 1.4.0, SCR 1.0.6
Reporter: Alin Dreghiciu
Situation (is about Pax Shell using SCR):
Bundle 1:
<component name='org.ops4j.pax.shell.threadio.internal.ThreadIOImpl'>
<implementation class='org.ops4j.pax.shell.threadio.internal.ThreadIOImpl'/>
<service>
<provide interface='org.osgi.service.threadio.ThreadIO'/>
</service>
</component>
Bundle 2:
<component name='org.ops4j.pax.shell.runtime.internal.CommandProcessorImpl'>
<implementation class='org.ops4j.pax.shell.runtime.internal.CommandProcessorImpl'/>
<service>
<provide interface='org.osgi.service.command.CommandProcessor'/>
</service>
<reference name='threadIO' interface='org.osgi.service.threadio.ThreadIO' bind='setThreadIO' unbind='unsetThreadIO'/>
If both bundles are started bundle 2 exports a CommandProcessor service. This is correct.
If I stop bundle 1, I expect that bundle 2 would unregister the CommandProcessor service. But this is not the case, as service is still exported
If after the bundle 1 was stopped I stop the bundle 2 and start bundle 2 again, the service CommandProcessor is indeed not exported (as bundle 1 is not started so there is no ThreadIO service).
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Resolved: (FELIX-862) Services not unregistered on component
deactivation
Posted by "Alin Dreghiciu (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/FELIX-862?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Alin Dreghiciu resolved FELIX-862.
----------------------------------
Resolution: Fixed
I retested and seems like the problem is gone.
> Services not unregistered on component deactivation
> ---------------------------------------------------
>
> Key: FELIX-862
> URL: https://issues.apache.org/jira/browse/FELIX-862
> Project: Felix
> Issue Type: Bug
> Components: Declarative Services (SCR)
> Environment: Felix 1.4.0, SCR 1.0.6
> Reporter: Alin Dreghiciu
>
> Situation (is about Pax Shell using SCR):
> Bundle 1:
> <component name='org.ops4j.pax.shell.threadio.internal.ThreadIOImpl'>
> <implementation class='org.ops4j.pax.shell.threadio.internal.ThreadIOImpl'/>
> <service>
> <provide interface='org.osgi.service.threadio.ThreadIO'/>
> </service>
> </component>
> Bundle 2:
> <component name='org.ops4j.pax.shell.runtime.internal.CommandProcessorImpl'>
> <implementation class='org.ops4j.pax.shell.runtime.internal.CommandProcessorImpl'/>
> <service>
> <provide interface='org.osgi.service.command.CommandProcessor'/>
> </service>
> <reference name='threadIO' interface='org.osgi.service.threadio.ThreadIO' bind='setThreadIO' unbind='unsetThreadIO'/>
> If both bundles are started bundle 2 exports a CommandProcessor service. This is correct.
> If I stop bundle 1, I expect that bundle 2 would unregister the CommandProcessor service. But this is not the case, as service is still exported
> If after the bundle 1 was stopped I stop the bundle 2 and start bundle 2 again, the service CommandProcessor is indeed not exported (as bundle 1 is not started so there is no ThreadIO service).
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (FELIX-862) Services not unregistered on
component deactivation
Posted by "Alin Dreghiciu (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/FELIX-862?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12658728#action_12658728 ]
Alin Dreghiciu commented on FELIX-862:
--------------------------------------
This may be related to the NPE from FELIX-861.
> Services not unregistered on component deactivation
> ---------------------------------------------------
>
> Key: FELIX-862
> URL: https://issues.apache.org/jira/browse/FELIX-862
> Project: Felix
> Issue Type: Bug
> Components: Declarative Services (SCR)
> Environment: Felix 1.4.0, SCR 1.0.6
> Reporter: Alin Dreghiciu
>
> Situation (is about Pax Shell using SCR):
> Bundle 1:
> <component name='org.ops4j.pax.shell.threadio.internal.ThreadIOImpl'>
> <implementation class='org.ops4j.pax.shell.threadio.internal.ThreadIOImpl'/>
> <service>
> <provide interface='org.osgi.service.threadio.ThreadIO'/>
> </service>
> </component>
> Bundle 2:
> <component name='org.ops4j.pax.shell.runtime.internal.CommandProcessorImpl'>
> <implementation class='org.ops4j.pax.shell.runtime.internal.CommandProcessorImpl'/>
> <service>
> <provide interface='org.osgi.service.command.CommandProcessor'/>
> </service>
> <reference name='threadIO' interface='org.osgi.service.threadio.ThreadIO' bind='setThreadIO' unbind='unsetThreadIO'/>
> If both bundles are started bundle 2 exports a CommandProcessor service. This is correct.
> If I stop bundle 1, I expect that bundle 2 would unregister the CommandProcessor service. But this is not the case, as service is still exported
> If after the bundle 1 was stopped I stop the bundle 2 and start bundle 2 again, the service CommandProcessor is indeed not exported (as bundle 1 is not started so there is no ThreadIO service).
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (FELIX-862) Services not unregistered on
component deactivation
Posted by "Alin Dreghiciu (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/FELIX-862?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12658971#action_12658971 ]
Alin Dreghiciu commented on FELIX-862:
--------------------------------------
The problem is not solved by applying the patch that solved FELIX-861.
Even if the exception is gone the service does not get unregistered, so, the situation is as before.
> Services not unregistered on component deactivation
> ---------------------------------------------------
>
> Key: FELIX-862
> URL: https://issues.apache.org/jira/browse/FELIX-862
> Project: Felix
> Issue Type: Bug
> Components: Declarative Services (SCR)
> Environment: Felix 1.4.0, SCR 1.0.6
> Reporter: Alin Dreghiciu
>
> Situation (is about Pax Shell using SCR):
> Bundle 1:
> <component name='org.ops4j.pax.shell.threadio.internal.ThreadIOImpl'>
> <implementation class='org.ops4j.pax.shell.threadio.internal.ThreadIOImpl'/>
> <service>
> <provide interface='org.osgi.service.threadio.ThreadIO'/>
> </service>
> </component>
> Bundle 2:
> <component name='org.ops4j.pax.shell.runtime.internal.CommandProcessorImpl'>
> <implementation class='org.ops4j.pax.shell.runtime.internal.CommandProcessorImpl'/>
> <service>
> <provide interface='org.osgi.service.command.CommandProcessor'/>
> </service>
> <reference name='threadIO' interface='org.osgi.service.threadio.ThreadIO' bind='setThreadIO' unbind='unsetThreadIO'/>
> If both bundles are started bundle 2 exports a CommandProcessor service. This is correct.
> If I stop bundle 1, I expect that bundle 2 would unregister the CommandProcessor service. But this is not the case, as service is still exported
> If after the bundle 1 was stopped I stop the bundle 2 and start bundle 2 again, the service CommandProcessor is indeed not exported (as bundle 1 is not started so there is no ThreadIO service).
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (FELIX-862) Services not unregistered on
component deactivation
Posted by "Felix Meschberger (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/FELIX-862?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12658816#action_12658816 ]
Felix Meschberger commented on FELIX-862:
-----------------------------------------
Yes, this may be related, since the component is probably not properly stopped due to the uncaught NullPointerException.
Could you try with the patch I posted to FELIX-861, whether it works ? Thanks.
> Services not unregistered on component deactivation
> ---------------------------------------------------
>
> Key: FELIX-862
> URL: https://issues.apache.org/jira/browse/FELIX-862
> Project: Felix
> Issue Type: Bug
> Components: Declarative Services (SCR)
> Environment: Felix 1.4.0, SCR 1.0.6
> Reporter: Alin Dreghiciu
>
> Situation (is about Pax Shell using SCR):
> Bundle 1:
> <component name='org.ops4j.pax.shell.threadio.internal.ThreadIOImpl'>
> <implementation class='org.ops4j.pax.shell.threadio.internal.ThreadIOImpl'/>
> <service>
> <provide interface='org.osgi.service.threadio.ThreadIO'/>
> </service>
> </component>
> Bundle 2:
> <component name='org.ops4j.pax.shell.runtime.internal.CommandProcessorImpl'>
> <implementation class='org.ops4j.pax.shell.runtime.internal.CommandProcessorImpl'/>
> <service>
> <provide interface='org.osgi.service.command.CommandProcessor'/>
> </service>
> <reference name='threadIO' interface='org.osgi.service.threadio.ThreadIO' bind='setThreadIO' unbind='unsetThreadIO'/>
> If both bundles are started bundle 2 exports a CommandProcessor service. This is correct.
> If I stop bundle 1, I expect that bundle 2 would unregister the CommandProcessor service. But this is not the case, as service is still exported
> If after the bundle 1 was stopped I stop the bundle 2 and start bundle 2 again, the service CommandProcessor is indeed not exported (as bundle 1 is not started so there is no ThreadIO service).
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.