cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Thibaut (Created) (JIRA)" <j...@apache.org>
Subject [jira] [Created] (CASSANDRA-4137) QUORUM Multiget RangeSliceQuery causes unnecessary writes to read entries
Date Wed, 11 Apr 2012 16:43:16 GMT
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

        

Mime
View raw message