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

Sylvain Lebresne updated CASSANDRA-13341:
-----------------------------------------
    Reviewer: Branimir Lambov
      Status: Patch Available  (was: Open)

Attaching fix and a unit test to demonstrate the problem. The basic idea is 
that the legacy deserializer has to wait until he has seen all range tombstones 
with the same start before generating an open marker.

| [13341-3.0|https://github.com/pcmanus/cassandra/commits/13341-3.0] | 
[utests|http://cassci.datastax.com/job/pcmanus-13341-3.0-testall] | 
[dtests|http://cassci.datastax.com/job/pcmanus-13341-3.0-dtest] |
| [13341-3.11|https://github.com/pcmanus/cassandra/commits/13341-3.11] | 
[utests|http://cassci.datastax.com/job/pcmanus-13341-3.11-testall] | 
[dtests|http://cassci.datastax.com/job/pcmanus-13341-3.11-dtest] |

[~blambov]: setting you as reviewer because while it's a different problem than 
in CASSANDRA-13237, it touches basically the same code. If you don't have time, 
feel free to de-assign yourself though.


> Legacy deserializer can create empty range tombstones
> -----------------------------------------------------
>
>                 Key: CASSANDRA-13341
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-13341
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>             Fix For: 3.0.x, 3.11.x
>
>
> Range tombstones in the 2.x file format is a bit far-westy so you can 
> actually get sequences of range tombstones like {{\[1, 4\]@3 \[1, 10\]@5}}. 
> But the current legacy deserializer doesn't handle this correctly. On the 
> first range, it will generate a {{INCL_START(1)@3}} open marker, but upon 
> seeing the next tombstone it will decide to close the previously opened range 
> and re-open with deletion time 5, so will generate 
> {{EXCL_END_INCL_START(1)@3-5}}. That result in the first range being empty, 
> which break future assertions in the code.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to