Streaming is mono-threaded (the bulk loader too by extension) -------------------------------------------------------------
Key: CASSANDRA-3494 URL: https://issues.apache.org/jira/browse/CASSANDRA-3494 Project: Cassandra Issue Type: Improvement Components: Core Affects Versions: 0.8.0 Reporter: Sylvain Lebresne Priority: Minor The streamExecutor is define as: {noformat} streamExecutor_ = new DebuggableThreadPoolExecutor("Streaming", Thread.MIN_PRIORITY); {noformat} In the meantime, in DebuggableThreadPoolExecutor.java: {noformat} public DebuggableThreadPoolExecutor(String threadPoolName, int priority) { this(1, Integer.MAX_VALUE, TimeUnit.SECONDS, new LinkedBlockingQueue<Runnable>(), new NamedThreadFactory(threadPoolName, priority)); } {noformat} In other word, since the core pool size is 1 and the queue unbounded, tasks will always queued and the executor is essentially mono-threaded. This is clearly not necessary since we already have stream throttling nowadays. And it could be a limiting factor in the case of the bulk loader. Besides, I would venture that this maybe was not the intention, because putting the max core size to MAX_VALUE would suggest that the intention was to spawn threads on demand. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira