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

add cache save/load

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Resolved
    • Normal
    • Resolution: Fixed
    • 0.6.6, 0.7 beta 3
    • None
    • None

    Description

      Since mixing 0.7 nodes with 0.6 is looking increasingly unlikely to be supported because of the deep changes to the Thrift API, we should allow saving out the 0.6 cache and loading it on startup so that we don't inflict the pain of an entire cluster of cold cache on upgraders.

      The cache format should just be a list of row keys. Loading it is as simple as calling getColumnFamily (with a zero-column predicate) on each row, for row cache.

      Key cache is more complicated, but only a little. First is that you have to de-duplicate the row keys from multiple sstables. (Saving which sstable version it's associated with is less useful, since that will be obsoleted by compaction.) Second is that we don't need to actually read any row data, we just need to go through the index locator part of the read path (getPosition).

      Attachments

        1. 1417-cassandra-0.6.txt
          32 kB
          Matthew F. Dennis
        2. 1417-cassandra-0.6-v3.txt
          32 kB
          Matthew F. Dennis
        3. 1417-cassandra-0.6-v4.txt
          34 kB
          Matthew F. Dennis
        4. 1417-cassandra-0.6-v5.txt
          32 kB
          Matthew F. Dennis
        5. 1417-cassandra-0.6-v7.txt
          38 kB
          Matthew F. Dennis
        6. 1417-cassandra-0.6-v9.txt
          45 kB
          Matthew F. Dennis
        7. 1417-trunk-v7.txt
          40 kB
          Matthew F. Dennis
        8. 1417-trunk-v9.txt
          46 kB
          Matthew F. Dennis
        9. 1417-v2.txt
          32 kB
          Jonathan Ellis
        10. 1417-v6.txt
          34 kB
          Jonathan Ellis
        11. 1417-v8.txt
          37 kB
          Jonathan Ellis

        Activity

          People

            mdennis Matthew F. Dennis
            jbellis Jonathan Ellis
            Matthew F. Dennis
            Jonathan Ellis
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: