[ 
https://issues.apache.org/jira/browse/CASSANDRA-10573?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Benjamin Lerer updated CASSANDRA-10573:
---------------------------------------
    Attachment: 10573-3.0.txt

The test is flapping because the token ranges are randomly assigned. If the 
data is on the {{2.2}} coordinator node the test will pass but if the data end 
up on the {{3.0}} node the test will fail.

I think we should try to make our tests more deterministic. We tend to delay 
looking at flappy tests because they are more complex to investigate. 

In this case the problem is cause by the fact that the {{3.0}} node return 
empty rows as only the partition keys are requested. The {{StorageProxy}} of 
the {{2.2}} coordinator node will ignore those rows as they do not contains any 
cell.

The patch fix that problem by making the {{3.0}} node returning the row cells 
when the coordinator node is a {{2.X}} node.

The other approach would have been to make the {{2.2}} {{StorageProxy}} not 
ignore the empty rows.  

> select_distinct_test flapping on 2.2 -> 3.0 upgrade path
> --------------------------------------------------------
>
>                 Key: CASSANDRA-10573
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-10573
>             Project: Cassandra
>          Issue Type: Sub-task
>            Reporter: Jim Witschey
>            Assignee: Benjamin Lerer
>             Fix For: 3.1
>
>         Attachments: 10573-3.0.txt
>
>
> The {{upgrade_tests/cql_tests.py:TestCQLNodes2RF1.select_distinct_test 
> flaps}} dtest flaps on CassCI. It flaps locally for me as well:
> {code}
> CASSANDRA_VERSION=git:cassandra-3.0 nosetests 
> upgrade_tests/cql_tests.py:TestCQLNodes2RF1.select_distinct_test
> {code}
> Once [this dtest pr|https://github.com/riptano/cassandra-dtest/pull/624] is 
> merged, you can run against a local directory with 
> {code}
> CASSANDRA_VERSION=git:cassandra-3.0 OLD_CASSANDRA_VERSION=binary:2.2.3 
> UPGRADE_TO_DIR=~/path/to/cassandra nosetests 
> upgrade_tests/cql_tests.py:TestCQLNodes2RF1.select_distinct_test --no-skip
> {code}
> Apologies for the ugly interface for that. To run on Windows, use {{set}} to 
> set environment variables like {{CASSANDRA_VERSION}} instead of including 
> them in the command.
> The history for the test is here:
> http://cassci.datastax.com/view/cassandra-3.0/job/cassandra-3.0_dtest/280/testReport/junit/upgrade_tests.cql_tests/TestCQL/select_distinct_test/
> Note that the name of the class containing the test has changed from 
> {{TestCQL}} to ; its behavior hasn't.



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

Reply via email to