[
https://jira.jboss.org/jira/browse/JBCACHE-1443?page=com.atlassian.jira.p...
]
Manik Surtani resolved JBCACHE-1443.
------------------------------------
Resolution: Done
These are now backed by bounded queues, with a default queue size of 1000000 each,
configurable.
By default async serialization is disabled as well.
Async marshalling, async cache loading and async notification
handling use unbounded queues
--------------------------------------------------------------------------------------------
Key: JBCACHE-1443
URL:
https://jira.jboss.org/jira/browse/JBCACHE-1443
Project: JBoss Cache
Issue Type: Bug
Security Level: Public(Everyone can see)
Affects Versions: 3.0.0.CR3
Reporter: Brian Stansberry
Assignee: Manik Surtani
Priority: Critical
Fix For: 3.0.0.GA
The async handling in CommandAwareRpcDispatcher, AsyncCacheLoader and NotifierImpl all
use Executors.newFixedThreadPool() to set up their ExecutorService. Per the method
javadoc for that method it "Creates a thread pool that reuses a fixed set of threads
operating off a shared unbounded queue". Use of an unbounded queue is inherently
unsafe, and particularly in these use cases where there could be a very large number of
threads adding tasks to the queue, while the default config only creates a single thread
to take tasks off the queue.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira