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

Centralize all snapshot operations to SnapshotManager and cache snapshots

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Review In Progress
    • Normal
    • Resolution: Unresolved
    • 5.x
    • Local/Snapshots
    • None
    • Performance
    • Normal
    • All
    • None
    • Hide

      ci

      Show
      ci

    Description

      Everytime nodetool listsnapshots is called, all data directories are scanned to find snapshots, what is inefficient.

      For example, fetching the org.apache.cassandra.metrics:type=ColumnFamily,name=SnapshotsSize metric can take half a second (CASSANDRA-13338).

      This improvement will also allow snapshots to be efficiently queried via virtual tables (CASSANDRA-18102).

      In order to do this, we should:
      a) load all snapshots from disk during initialization
      b) keep a collection of snapshots on SnapshotManager
      c) update the snapshots collection anytime a new snapshot is taken or cleared
      d) detect when a snapshot is manually removed from disk.

      Attachments

        Issue Links

          Activity

            People

              smiklosovic Stefan Miklosovic
              paulo Paulo Motta
              Stefan Miklosovic
              Francisco Guerrero, Paulo Motta
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 5h 50m
                  5h 50m