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

Sylvain Lebresne updated CASSANDRA-3934:
----------------------------------------

    Attachment: 3934.txt

Patch is against 1.0. The patch:
* don't retry if we have enough columns to satisfy the initial query
* keep the original count intact even if we do multiple retries.
* optimize the number of columns asked by a retry based on the ratio of number 
of column got/total asked on the initial query.
                
> Short read protection is broken
> -------------------------------
>
>                 Key: CASSANDRA-3934
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-3934
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 1.0.2
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>            Priority: Minor
>             Fix For: 1.0.8, 1.1.0
>
>         Attachments: 3934.txt
>
>
> When a read needs to do more than one retry (due to short reads), the 
> originalCount is not preserved by the retry leading to returning more than 
> the requested number of columns.
> Moreover, when a retried read checks whether more retry is needed, it doesn't 
> compare the number of live column retrieved against the original number of 
> columns requested by the user, but against the number of columns requested 
> during the retry, making it much more likely to actually do one more retry.
> This catch by the two tests 'short_read_test' and 'short_read_reversed_test' 
> at https://github.com/riptano/cassandra-dtest/blob/master/consistency_test.py 
> that are failing intermittently.

--
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