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

Serializing Row cache alternative (Fully off heap)

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Normal
    • Resolution: Fixed
    • 2.2.0 beta 1
    • None
    • Linux

    • Docs

    Description

      Currently SerializingCache is partially off heap, keys are still stored in JVM heap as BB,

      • There is a higher GC costs for a reasonably big cache.
      • Some users have used the row cache efficiently in production for better results, but this requires careful tunning.
      • Overhead in Memory for the cache entries are relatively high.

      So the proposal for this ticket is to move the LRU cache logic completely off heap and use JNI to interact with cache. We might want to ensure that the new implementation match the existing API's (ICache), and the implementation needs to have safe memory access, low overhead in memory and less memcpy's (As much as possible).

      We might also want to make this cache configurable.

      Attachments

        1. tests.zip
          27 kB
          Vijay
        2. 0001-CASSANDRA-7438.patch
          34 kB
          Vijay

        Issue Links

          Activity

            People

              snazy Robert Stupp
              vijay2win@yahoo.com Vijay
              Robert Stupp
              Ariel Weisberg
              Votes:
              0 Vote for this issue
              Watchers:
              16 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 215.7h
                  215.7h