Uploaded image for project: 'Cassandra'
  1. Cassandra
  2. CASSANDRA-7594

Disruptor Thrift server worker thread pool not adjustable

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Normal
    • Resolution: Fixed
    • 2.0.11
    • None
    • None

    Description

      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.

      Attachments

        1. CASSANDRA-7594.patch
          3 kB
          Pavel Yaskevich
        2. disruptor-thrift-server-0.3.6-SNAPSHOT.jar
          39 kB
          Pavel Yaskevich
        3. jstack.txt
          52 kB
          Philip Thompson
        4. thrift-server-0.3.7-SNAPSHOT.jar
          39 kB
          Pavel Yaskevich

        Activity

          People

            xedin Pavel Yaskevich
            rbranson Rick Branson
            Pavel Yaskevich
            Jason Brown
            Rick Branson Rick Branson
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: