You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Emmanuel Hugonnet (JIRA)" <ji...@apache.org> on 2019/01/24 14:59:00 UTC

[jira] [Commented] (ARTEMIS-2171) ThreadPoolExecutor leak under SM due to lack of privileged block

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

Emmanuel Hugonnet commented on ARTEMIS-2171:
--------------------------------------------

Adding Priviledged blocks around ThreadFactories is sufficient since the AccessControlContext is captured during Thread creation.

> ThreadPoolExecutor leak under SM due to lack of privileged block
> ----------------------------------------------------------------
>
>                 Key: ARTEMIS-2171
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-2171
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 2.6.3
>            Reporter: Miroslav Novak
>            Priority: Major
>
> Description cloned from https://issues.jboss.org/browse/WFLY-10380:
> Still researching the source of these leaks.
> The way the leak happens is, a java.util.concurrent.ThreadPoolExecutor is constructed from an unprivileged context. The pool starts up and threads are created without a problem, however, the thread pool is never shut down. The finalizer runs but since it tries to shut down the pool with an access control context that was captured during construction, it fails because the context did not have the modifyThread RuntimePermission, and the thread pool never shuts down.
> We need to identify the points where TPEs are being constructed without controlled privileges.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)