QUORUM Multiget RangeSliceQuery causes unnecessary writes to read entries
-------------------------------------------------------------------------

                 Key: CASSANDRA-4137
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4137
             Project: Cassandra
          Issue Type: Bug
          Components: Core
    Affects Versions: 0.8.9
            Reporter: Thibaut
            Priority: Critical
             Fix For: 0.8.11


>From the mailing list:

I created a new test keyspace and added 10 000 keys to it. The cluster has 3 
machines, RF=3, read repair disabled (enabling it didn't change anything). The 
keyspace doesn't contain any thumbstones. No keys were deleted.

When I fetch a rangeslice through hector and set the consistency level to 
quorum, according to cfstats (and also to the output files on the hd), 
cassandra seems to execute a write request for each read I execute. The write 
count in cfstats is increased when I execute the rangeslice function over the 
same range again and again (without saving anything at all).

If I set the consistency level to ONE or ALL, no writes are executed.

I checked the writes on one machine. They increased by 2300 for each iteration 
over the 10000 keys. I didn't check, but this probably corresponds to the 
number of keys for which the machine is responsible.

Code:
                                Keyspace ks = getConnection(cluster, 
consistencylevel);

                                RangeSlicesQuery<String, String, V> 
rangeSlicesQuery = HFactory.createRangeSlicesQuery(ks, StringSerializer.get(), 
StringSerializer.get(), s);

                                rangeSlicesQuery.setColumnFamily(columnFamily);
                                rangeSlicesQuery.setColumnNames(column);

                                rangeSlicesQuery.setKeys(start, end);
                                rangeSlicesQuery.setRowCount(maxrows);

                                QueryResult<OrderedRows<String, String, V>> 
result = rangeSlicesQuery.execute();
                                return result.get();




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

        

Reply via email to