You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Wiktor N (JIRA)" <ji...@apache.org> on 2017/01/07 01:11:58 UTC

[jira] [Commented] (JCS-171) Multiple CacheEventQueue.QProcessor spawned for the same cache region

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

Wiktor N commented on JCS-171:
------------------------------

Using only second change I can see that CacheEventQueue.QProcessor threads die after sometime instead live forever.

Please find patch attached.

> Multiple CacheEventQueue.QProcessor spawned for the same cache region
> ---------------------------------------------------------------------
>
>                 Key: JCS-171
>                 URL: https://issues.apache.org/jira/browse/JCS-171
>             Project: Commons JCS
>          Issue Type: Bug
>          Components: Composite Cache
>    Affects Versions: jcs-2.0
>            Reporter: Wiktor N
>
> I noticed that running on new version of JCS I get multiple CacheEventQueue.QProcessor thread. They spawn from time to time.
> I've checked recent changes and changes few things in r1774925 look suspicious:
> 1. In previous code we spawned a new thread in synchronized section. This got us a guarantee, that there will be no two threads trying to spawn a new thread in the same time. Maybe some locking is needed around thread creation?
> 2. QProcessor uses isAlive() method. But this is defined by Thread.isAlive() while it should probably check for CacheEventQueue.this.isAlive()



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)