[jira] [Commented] (CASSANDRA-14330) Handle repeat open bound from SRP in read repair

2018-03-23 Thread Aleksey Yeschenko (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-14330?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16411516#comment-16411516
 ] 

Aleksey Yeschenko commented on CASSANDRA-14330:
---

Thanks for the prompt review, [~slebresne]

Committed as 
[3153c630c499edf3c523d8e5a3db6f1d6c52ad4c|https://github.com/apache/cassandra/commit/3153c630c499edf3c523d8e5a3db6f1d6c52ad4c]
 to 3.0 and merged upwards. Committed the dtest as 
[dac3d7535cc120a6615257fb9dd05988e9901dc4|https://github.com/apache/cassandra-dtest/commit/dac3d7535cc120a6615257fb9dd05988e9901dc4].

> Handle repeat open bound from SRP in read repair
> 
>
> Key: CASSANDRA-14330
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14330
> Project: Cassandra
>  Issue Type: Bug
>Reporter: Aleksey Yeschenko
>Assignee: Aleksey Yeschenko
>Priority: Major
> Fix For: 4.0, 3.0.17, 3.11.3
>
>
> If there is an open range tombstone in an iterator, a short read protection 
> request for it will include a repeat open bound. Currently, {{DataResolver}} 
> doesn't expect this, and will raise an assertion, timing out the request:
> {code}
> java.lang.AssertionError: Error merging RTs on test.test: merged=null, 
> versions=[Marker EXCL_START_BOUND(0)@0, null], sources={[/127.0.0.1, 
> /127.0.0.2]}, responses:
> /127.0.0.1 => [test.test] key=0 
> partition_deletion=deletedAt=-9223372036854775808, localDeletion=2147483647 
> columns=[[] | []]
>Row[info=[ts=1] ]: ck=0 | ,
>/127.0.0.2 => [test.test] key=0 
> partition_deletion=deletedAt=-9223372036854775808, localDeletion=2147483647 
> columns=[[] | []]
>Row[info=[ts=-9223372036854775808] del=deletedAt=1, 
> localDeletion=1521572669 ]: ck=0 |
>Row[info=[ts=1] ]: ck=1 | 
> {code}
> As this is a completely normal/common scenario, we should allow for this, and 
> relax the assertion.
> Additionally, the linked branch makes the re-trhowing {{AssertionError}} more 
> detailed and more correct: the responses are now printed out in the correct 
> order, respecting {{isReversed}}, the command causing the assertion is now 
> logged, as is {{isReversed}} itself, and local deletion times for RTs.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-14330) Handle repeat open bound from SRP in read repair

2018-03-23 Thread Sylvain Lebresne (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-14330?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16411459#comment-16411459
 ] 

Sylvain Lebresne commented on CASSANDRA-14330:
--

+1, fix lgtm. Nice job tracking that down and on the minimal test.

> Handle repeat open bound from SRP in read repair
> 
>
> Key: CASSANDRA-14330
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14330
> Project: Cassandra
>  Issue Type: Bug
>Reporter: Aleksey Yeschenko
>Assignee: Aleksey Yeschenko
>Priority: Major
> Fix For: 3.0.x, 3.11.x, 4.x
>
>
> If there is an open range tombstone in an iterator, a short read protection 
> request for it will include a repeat open bound. Currently, {{DataResolver}} 
> doesn't expect this, and will raise an assertion, timing out the request:
> {code}
> java.lang.AssertionError: Error merging RTs on test.test: merged=null, 
> versions=[Marker EXCL_START_BOUND(0)@0, null], sources={[/127.0.0.1, 
> /127.0.0.2]}, responses:
> /127.0.0.1 => [test.test] key=0 
> partition_deletion=deletedAt=-9223372036854775808, localDeletion=2147483647 
> columns=[[] | []]
>Row[info=[ts=1] ]: ck=0 | ,
>/127.0.0.2 => [test.test] key=0 
> partition_deletion=deletedAt=-9223372036854775808, localDeletion=2147483647 
> columns=[[] | []]
>Row[info=[ts=-9223372036854775808] del=deletedAt=1, 
> localDeletion=1521572669 ]: ck=0 |
>Row[info=[ts=1] ]: ck=1 | 
> {code}
> As this is a completely normal/common scenario, we should allow for this, and 
> relax the assertion.
> Additionally, the linked branch makes the re-trhowing {{AssertionError}} more 
> detailed and more correct: the responses are now printed out in the correct 
> order, respecting {{isReversed}}, the command causing the assertion is now 
> logged, as is {{isReversed}} itself, and local deletion times for RTs.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-14330) Handle repeat open bound from SRP in read repair

2018-03-21 Thread Aleksey Yeschenko (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-14330?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16408133#comment-16408133
 ] 

Aleksey Yeschenko commented on CASSANDRA-14330:
---

Branches for [3.0|https://github.com/iamaleksey/cassandra/tree/14330-3.0], 
[3.11|https://github.com/iamaleksey/cassandra/tree/14330-3.11], and 
[4.0|https://github.com/iamaleksey/cassandra/tree/14330-4.0]. CI: 
[3.0|https://circleci.com/gh/iamaleksey/cassandra/70], 
[3.11|https://circleci.com/gh/iamaleksey/cassandra/73], 
[4.0|https://circleci.com/gh/iamaleksey/cassandra/74].

Minimal reproduction dtest 
[here|https://github.com/iamaleksey/cassandra-dtest/tree/14330].

> Handle repeat open bound from SRP in read repair
> 
>
> Key: CASSANDRA-14330
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14330
> Project: Cassandra
>  Issue Type: Bug
>Reporter: Aleksey Yeschenko
>Assignee: Aleksey Yeschenko
>Priority: Major
> Fix For: 3.0.x, 3.11.x, 4.x
>
>
> If there is an open range tombstone in an iterator, a short read protection 
> request for it will include a repeat open bound. Currently, {{DataResolver}} 
> doesn't expect this, and will raise an assertion, timing out the request.
> As this is a completely normal/common scenario, we should allow for this, and 
> relax the assertion.
> Additionally, the linked branch makes the re-trhowing {{AssertionError}} more 
> detailed and more correct: the responses are now printed out in the correct 
> order, respecting {{isReversed}}, the command causing the assertion is now 
> logged, as is {{isReversed}} itself, and local deletion times for RTs.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org