Ivo Ladage - van Doorn created AMDATUCASSANDRA-171:
------------------------------------------------------

             Summary:  QUORUM range scan read triggers unnecessary row mutation 
in  a 3-node cluster with RF 3
                 Key: AMDATUCASSANDRA-171
                 URL: http://jira.amdatu.org/jira/browse/AMDATUCASSANDRA-171
             Project: Amdatu Cassandra
          Issue Type: Bug
          Components: Cassandra server
    Affects Versions: 0.2.2
            Reporter: Ivo Ladage - van Doorn
             Fix For: 0.2.3


In a 3-node cluster with RF 3 and R/W consistency levels QUORUM, a range scan 
query triggers an unnecessary row mutation. Th issue manifests itself in 
org.apache.cassandra.service.RangeSliceResponseResolver. For a QUORUM read, it 
only needs to send read requests to two nodes to reach the CL, and so it does. 
The RangeSliceResponseResolver evaluates the results to verify if a node 
responded with an out of date value and needs to be repaired.
Now the problem is that only two requests are send, but the 
RangeSliceResponseResolver verifies the versions returned by all 3 nodes. As 
only two versions are retrieved, one of these versions is null and so the 
RangeSliceResponseResolver concludes that it needs to be updated and creates a 
row mutation for it.
In fact, the issue is a mismatch between the endpoints to which READ requests 
are send in StorageProxy.getRangeSlice line 706 and the version results 
compared in  RangeSliceResponseResolver  line 122.


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
http://jira.amdatu.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        
_______________________________________________
Amdatu-developers mailing list
[email protected]
http://lists.amdatu.org/mailman/listinfo/amdatu-developers

Reply via email to