cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sam Tunnicliffe (JIRA)" <j...@apache.org>
Subject [jira] [Created] (CASSANDRA-11087) Queries on compact storage tables in mixed version clusters can return incorrect results
Date Thu, 28 Jan 2016 14:05:39 GMT
Sam Tunnicliffe created CASSANDRA-11087:
-------------------------------------------

             Summary: Queries on compact storage tables in mixed version clusters can return
incorrect results
                 Key: CASSANDRA-11087
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-11087
             Project: Cassandra
          Issue Type: Bug
          Components: Local Write-Read Paths
            Reporter: Sam Tunnicliffe
            Assignee: Sam Tunnicliffe
             Fix For: 3.0.x, 3.x


Whilst writing a dtest for CASSANDRA-11045, it becomes apparent that queries on compact storage
tables are broken during the 3.0 upgrade (and this has probably been the case since day 1).


tl;dr In a cluster with a mix of < 3.0 and 3.0 nodes, reads on COMPACT STORAGE tables may
not include all results. 

To repro: tables are created and data written before any nodes are upgraded to 3.0+, some
nodes are then upgraded putting the cluster into a mixed state.
Now, when a query is run where the coordinator is a < 3.0 node, any 3.0+ replica which
has not yet run upgradesstables always returns 0 results.  Once upgradesstables is run, the
replica returns the correct results. Likewise, if the data is inserted after the node is upgraded,
the results are correct. If the 3.0 node acts as the coordinator, the results are also correct
and so once all nodes are upgraded, the problem goes away.

The behaviour can be seen for both single partition and range requests as [this dtest|https://github.com/beobal/cassandra-dtest/commit/91bb9ffd8fb761ad3454187d2f05f05a6e7af930]
demonstrates.




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message