You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@karaf.apache.org by "Grzegorz Grzybek (JIRA)" <ji...@apache.org> on 2017/04/11 10:13:41 UTC
[jira] [Resolved] (KARAF-5089) GuardingEventHook may stop filtering
listeners if one of the bundles is not valid
[ https://issues.apache.org/jira/browse/KARAF-5089?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Grzegorz Grzybek resolved KARAF-5089.
-------------------------------------
Resolution: Fixed
Fixed in 4.1.x [here|https://github.com/apache/karaf/commit/b3572bff5f4e1c52f909420a56eee814ce0978dd]
Fixed in 4.0.x [here|https://github.com/apache/karaf/commit/6ad0dad0e9ce5cdaf82a62650a5052db9ff137e0]
> GuardingEventHook may stop filtering listeners if one of the bundles is not valid
> ---------------------------------------------------------------------------------
>
> Key: KARAF-5089
> URL: https://issues.apache.org/jira/browse/KARAF-5089
> Project: Karaf
> Issue Type: Bug
> Components: karaf-security
> Affects Versions: 4.0.9, 4.1.1
> Reporter: Grzegorz Grzybek
> Assignee: Grzegorz Grzybek
> Fix For: 4.1.2, 4.0.10
>
>
> I found a leak, where SCR component publishes service related to osgi.command and registration event is:
> * both handled in {{org.apache.karaf.service.guard.impl.GuardProxyCatalog#handleProxificationForHook()}}
> * passed to {{org.apache.karaf.shell.security.impl.SecuredCommandProcessorImpl#commandTracker}}
> The reason for this is that one of the bundles iterated over in {{org.apache.karaf.service.guard.impl.GuardingEventHook#event}} may throw IllegalStateException when invoking bundleContext.getBundle().getBundleId().
> When the service for command is then unregistered, the unregistration event may be this time filtered out and we have duplicate command in {{org.apache.felix.gogo.runtime.CommandProcessorImpl#commands}}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)