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

nodetool status causes garbage to be accrued

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Normal
    • Resolution: Unresolved
    • None
    • Tool/nodetool
    • Ubuntu 14.04 64-bit
      Cassandra 2.0.14
      Java 1.7.0 OpenJDK

    • Normal

    Description

      As part of monitoring our Cassandra clusters (generally 2-6 nodes) we were running `nodetool status` regularly (~ every 5 minutes). On Cassandra 1.2.12 this worked fine and had negligible effect on the Cassandra database service.

      Having upgraded to Cassandra 2.0.14, we've found that, over time, the tenured memory space slowly fills with `RMIConnectionImpl` objects (and some other associated objects) until we start running into memory pressure and triggering proactive and then STW GC (which obviously impact performance of the cluster). It seems that these objects are kept around long enough to get promoted to tenured from Eden and then don't get considered for collection (due to internal reference cycles?).

      Very easy to reproduce, just call `nodetool status` in a loop and watch the memory usage climb to capacity then drop to empty after STW. No need to be accessing the DB keys at all.

      Attachments

        1. JVM-heap-usage.png
          113 kB
          Andy Caldwell
        2. jstat-gc.xlsx
          1.25 MB
          Adam Lindley

        Activity

          People

            Unassigned Unassigned
            boss_mc Andy Caldwell
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

              Created:
              Updated: