cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "mck (JIRA)" <>
Subject [jira] [Commented] (CASSANDRA-7594) Disruptor Thrift server worker thread pool not adjustable
Date Fri, 07 Nov 2014 11:06:34 GMT


mck commented on CASSANDRA-7594:

After an upgrade to 2.0.11 i can't start the servers.

I get 
java.lang.OutOfMemoryError: Java heap space
        at com.thinkaurelius.thrift.TDisruptorServer$SelectorThread.<init>(
        at com.thinkaurelius.thrift.TDisruptorServer.<init>(
        at org.apache.cassandra.thrift.THsHaDisruptorServer.<init>(
        at org.apache.cassandra.thrift.THsHaDisruptorServer$Factory.buildTServer(
        at org.apache.cassandra.thrift.TServerCustomFactory.buildTServer(
        at org.apache.cassandra.thrift.ThriftServer$ThriftServerThread.<init>(
        at org.apache.cassandra.thrift.ThriftServer.start(
        at org.apache.cassandra.service.CassandraDaemon.start(
        at org.apache.cassandra.service.CassandraDaemon.activate(
        at org.apache.cassandra.service.CassandraDaemon.main(

If i edit cassandra.yaml so that rpc_max_threads to 256 then i am able to start the servers

> Disruptor Thrift server worker thread pool not adjustable
> ---------------------------------------------------------
>                 Key: CASSANDRA-7594
>                 URL:
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Rick Branson
>            Assignee: Pavel Yaskevich
>             Fix For: 2.0.11
>         Attachments: CASSANDRA-7594.patch, disruptor-thrift-server-0.3.6-SNAPSHOT.jar,
jstack.txt, thrift-server-0.3.7-SNAPSHOT.jar
> For the THsHaDisruptorServer, there may not be enough threads to run blocking StorageProxy
methods. The current number of worker threads is hardcoded at 2 per selector, so 2 * numAvailableProcessors(),
or 64 threads on a 16-core hyperthreaded machine. StorageProxy methods block these threads,
so this puts an upper bound on the throughput if hsha is enabled. If operations take 10ms
on average, the node can only handle a maximum of 6,400 operations per second. This is a regression
from hsha on 1.2.x, where the thread pool was tunable using rpc_min_threads and rpc_max_threads.

This message was sent by Atlassian JIRA

View raw message