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

Update default Garbage Collector GC on cassandra ps: Use G1GC instead of CMS

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Normal
    • Resolution: Duplicate
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None

      Description

      On Cassandra 2.0.8.39/DSE 4.5.1/Java HotSpot(TM) 64-Bit Server VM/1.7.0_67 encountered long running GC before dse was shutdown.
      This was a ring of 6 nodes, and no unexpected load/processes were run.The error log attached.

      Suspect was that it has hit hotspot/java GC issue.But in this case the class unloading is enabled.
      JVM_OPTS="$JVM_OPTS -XX:+CMSClassUnloadingEnabledā€¯
      XX:CMSInitiatingOccupancyFraction=75

      On a general note, what would make things better is to make G1GC as default garbage collector (for cassandra running > java 7 update 9) instead of CMS., as G1GC is far better.For eg: -XX:+UseG1GC -XX:MaxGCPauseMillis=50
      http://www.oracle.com/technetwork/tutorials/tutorials-1876574.html

      Perhaps also can be looked if 1.when CPU utilization kicks or heap size leak/long running GC is sensed, the nodetool -h localhost flush can auto kick in?
      2. force log the query when long running GC kicks in to make debuging easier.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                rekhajoshm Rekha Joshi
                Reporter:
                rekhajoshm Rekha Joshi
                Authors:
                Rekha Joshi
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: