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

Row Level Isolation is violated by read repair

Agile BoardAttach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskConvert to sub-taskMoveLinkCloneLabelsUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Low
    • Resolution: Later
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None
    • Severity:
      Low

      Description

      In 1.1, row level isolation was added. As per the blog post
      http://www.datastax.com/dev/blog/row-level-isolation

      "Cassandra guarantees that the changes to login and password are either both applied or none are."

      This is not true with background read repair. Consider this as given in the blog post.
      You run
      UPDATE Users
      SET login='eric22' AND password='f3g$dq!'
      WHERE key='550e8400-e29b-41d4-a716-446655440000'
      There are 3 machines A,B and C and replication is RF=3
      1) Machine A did not get this update as it was down and past hint window.
      2) Machine A comes online.
      3) You now only read the password.
      4) password is now read repaired on A.

      SO on machine A, password = f3g$dq! and login is still old

        Attachments

        Issue Links

          Activity

            People

              Dates

              • Created:
                Updated:
                Resolved:

                Issue deployment