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

Add startup flag to load a local snapshot from disk

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Triage Needed
    • Normal
    • Resolution: Unresolved
    • None
    • Local/Snapshots
    • None
    • All
    • None

    Description

      Add startup flag "cassandra.load_snapshot_unsafe=snapshot_id" that loads a snapshot with the specified ID into the sstable tracker in the initial startup phase.

      The flag has the _unsafe prefix because it may cause data consistency issues if this is used incorrectly. For example, if a given snapshot is loaded in a single replica of a replicated keyspace, it may cause replicas to go out of sync. For this reason, this flag should only be accepted if the "allow_load_snapshot_unsafe" guardrail is enabled (it is disabled by default).

      When the flag is detected during startup, snapshots with the given tag will be located. If no snapshot with the given tag exists, the startup should fail.

      The snapshot loading mechanism should create a hard link to existing sstables into a staging area to ensure the existing data is secured. After this, it should replace the existing sstables with the snapshot data into the sstable tracker before proceeding normally with the startup.

      Attachments

        Issue Links

          Activity

            People

              paulo Paulo Motta
              paulo Paulo Motta
              Paulo Motta
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated: