Cassandra
  1. Cassandra
  2. CASSANDRA-6488

Batchlog writes consume unnecessarily large amounts of CPU on vnodes clusters

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Fix Version/s: 1.2.13, 2.0.4
    • Component/s: None
    • Labels:
      None

      Description

      The cloneTokenOnlyMap call in StorageProxy.getBatchlogEndpoints causes enormous amounts of CPU to be consumed on clusters with many vnodes. I created a patch to cache this data as a workaround and deployed it to a production cluster with 15,000 tokens. CPU consumption drop to 1/5th. This highlights the overall issues with cloneOnlyTokenMap() calls on vnodes clusters. I'm including the maybe-not-the-best-quality workaround patch to use as a reference, but cloneOnlyTokenMap is a systemic issue and every place it's called should probably be investigated.

      1. graph (21).png
        41 kB
        Rick Branson
      2. 6488-v3.txt
        10 kB
        Aleksey Yeschenko
      3. 6488-v2.txt
        6 kB
        Jonathan Ellis
      4. 6488-rbranson-patch.txt
        5 kB
        Rick Branson
      5. 6488-fix.txt
        4 kB
        Aleksey Yeschenko

        Activity

        Rick Branson created issue -
        Rick Branson made changes -
        Field Original Value New Value
        Attachment 6488-rbranson-patch.txt [ 12618736 ]
        Rick Branson made changes -
        Attachment graph (21).png [ 12618737 ]
        Jonathan Ellis made changes -
        Attachment 6488-v2.txt [ 12618777 ]
        Aleksey Yeschenko made changes -
        Attachment 6488-v3.txt [ 12618811 ]
        Aleksey Yeschenko made changes -
        Fix Version/s 1.2.13 [ 12325602 ]
        Fix Version/s 2.0.4 [ 12325644 ]
        Aleksey Yeschenko made changes -
        Status Open [ 1 ] Patch Available [ 10002 ]
        Assignee Aleksey Yeschenko [ iamaleksey ] Rick Branson [ rbranson ]
        Reviewer Aleksey Yeschenko [ iamaleksey ]
        Aleksey Yeschenko made changes -
        Status Patch Available [ 10002 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Aleksey Yeschenko made changes -
        Resolution Fixed [ 1 ]
        Status Resolved [ 5 ] Reopened [ 4 ]
        Aleksey Yeschenko made changes -
        Attachment 6488-fix.txt [ 12619106 ]
        Aleksey Yeschenko made changes -
        Status Reopened [ 4 ] Patch Available [ 10002 ]
        Jonathan Ellis made changes -
        Status Patch Available [ 10002 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]

          People

          • Assignee:
            Rick Branson
            Reporter:
            Rick Branson
            Reviewer:
            Aleksey Yeschenko
          • Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development