You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "sankalp kohli (JIRA)" <ji...@apache.org> on 2014/11/11 01:53:34 UTC
[jira] [Created] (CASSANDRA-8287) Row Level Isolation is violated
by read repair
sankalp kohli created CASSANDRA-8287:
----------------------------------------
Summary: Row Level Isolation is violated by read repair
Key: CASSANDRA-8287
URL: https://issues.apache.org/jira/browse/CASSANDRA-8287
Project: Cassandra
Issue Type: Bug
Components: Core
Reporter: sankalp kohli
Priority: Minor
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
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)