Cassandra
  1. Cassandra
  2. CASSANDRA-1316

Read repair does not always work correctly

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Fix Version/s: 0.6.4
    • Component/s: Core
    • Labels:
      None

      Description

      Read repair does not always work. At the least, we allow violation of the CL.ALL contract. To reproduce, create a three node cluster with RF=3, and json2sstable one of the attached json files on each node. This creates a row whose key is 'test' with 9 columns, but only 3 columns are on each machine. If you get_count this row in quick succession at CL.ALL, sometimes you will receive a count of 6, sometimes 9. After the ReadRepairManager has sent the repairs, you will always get 9, which is the desired behavior.

      I have another data set obtained in the wild which never fully repairs for some reason, but it's a bit large to attach (600ish columns per machine.) I'm still trying to figure out why RR isn't working on this set, but I always get different results when reading at any CL including ALL, no matter how long I wait or how many reads I do.

      1. 1316-RRM.txt
        7 kB
        Jonathan Ellis
      2. RRR-v2.txt
        3 kB
        Jonathan Ellis
      3. 001_correct_responsecount_in_RRR.txt
        1 kB
        Brandon Williams
      4. cassandra-3.json
        0.1 kB
        Brandon Williams
      5. cassandra-2.json
        0.1 kB
        Brandon Williams
      6. cassandra-1.json
        0.1 kB
        Brandon Williams

        Activity

        Brandon Williams created issue -
        Brandon Williams made changes -
        Field Original Value New Value
        Attachment cassandra-1.json [ 12450405 ]
        Attachment cassandra-2.json [ 12450406 ]
        Attachment cassandra-3.json [ 12450407 ]
        Jonathan Ellis made changes -
        Affects Version/s 0.4 [ 12313862 ]
        Affects Version/s 0.6.3 [ 12315056 ]
        Component/s Core [ 12312978 ]
        Brandon Williams made changes -
        Attachment cassandra-1.json [ 12450405 ]
        Brandon Williams made changes -
        Attachment cassandra-2.json [ 12450406 ]
        Brandon Williams made changes -
        Attachment cassandra-3.json [ 12450407 ]
        Brandon Williams made changes -
        Attachment cassandra-1.json [ 12450423 ]
        Attachment cassandra-2.json [ 12450424 ]
        Attachment cassandra-3.json [ 12450425 ]
        Brandon Williams made changes -
        Attachment 001_correct_responsecount_in_RRR.txt [ 12450474 ]
        Jonathan Ellis made changes -
        Attachment RRR-v2.txt [ 12450479 ]
        Jonathan Ellis made changes -
        Fix Version/s 0.6.5 [ 12315220 ]
        Fix Version/s 0.6.4 [ 12315173 ]
        Jonathan Ellis made changes -
        Attachment 1316-RRM.txt [ 12450552 ]
        Jonathan Ellis made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Assignee Brandon Williams [ brandon.williams ]
        Fix Version/s 0.6.4 [ 12315173 ]
        Fix Version/s 0.6.5 [ 12315220 ]
        Resolution Fixed [ 1 ]
        Gavin made changes -
        Workflow no-reopen-closed, patch-avail [ 12516500 ] patch-available, re-open possible [ 12752370 ]
        Gavin made changes -
        Workflow patch-available, re-open possible [ 12752370 ] reopen-resolved, no closed status, patch-avail, testing [ 12758276 ]

          People

          • Assignee:
            Brandon Williams
            Reporter:
            Brandon Williams
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development