You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Tom Watson (Jira)" <ji...@apache.org> on 2023/01/18 13:59:00 UTC

[jira] [Commented] (FELIX-6581) When using ds.global.extender the LogManager can leak objects when bundles stopped

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

Tom Watson commented on FELIX-6581:
-----------------------------------

This was fixed in commit https://github.com/apache/felix-dev/commit/619d36714a9a1258a4c1d56b8b0d581fa7860903

A release is needed to include this fix.

> When using ds.global.extender the LogManager can leak objects when bundles stopped
> ----------------------------------------------------------------------------------
>
>                 Key: FELIX-6581
>                 URL: https://issues.apache.org/jira/browse/FELIX-6581
>             Project: Felix
>          Issue Type: Bug
>          Components: Declarative Services (SCR)
>            Reporter: Tom Watson
>            Assignee: Tom Watson
>            Priority: Major
>
> When using ds.global.extender the org.apache.felix.scr.impl.logger.LogManager.getLogger(Bundle, String, Class<T>) can get called for bundles that the SCR BundleContext cannot "see".  This will add an entry to the Map org.apache.felix.scr.impl.logger.LogManager.Lock.domains.  The org.apache.felix.scr.impl.logger.LogManager is a BundleListener and always gets added using the SCR BundleContext.  The org.apache.felix.scr.impl.logger.LogManager.bundleChanged(BundleEvent) is then supposed to remove added bundles from the domains map when the bundle is stopped.
> The LogManager bundle listener never gets called for bundles that the SCR BundleContext cannot "see".  This leads to the leak when the bundles are stopped and uninstalled.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)