You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Aleksey Yeschenko (JIRA)" <ji...@apache.org> on 2018/09/25 14:42:00 UTC

[jira] [Comment Edited] (CASSANDRA-14766) DESC order reads can fail to return the last Unfiltered in the partition in a legacy sstable

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

Aleksey Yeschenko edited comment on CASSANDRA-14766 at 9/25/18 2:41 PM:
------------------------------------------------------------------------

3.0: [code|https://github.com/iamaleksey/cassandra/commits/14766-3.0], [CI|https://circleci.com/workflow-run/b86af556-5675-4a83-8de8-21941175608f]
3.11: [code|https://github.com/iamaleksey/cassandra/commits/14766-3.11], [CI|https://circleci.com/workflow-run/d23b37c9-225a-4e13-85fd-484bda81c37b]
A small dtest for illustration (in addition to a regression unit test in C* repo) can be found [here|https://github.com/iamaleksey/cassandra-dtest/commits/14766].


was (Author: iamaleksey):
3.0: [code|https://github.com/iamaleksey/cassandra/commits/14766-3.0], [CI|https://circleci.com/workflow-run/a0331573-f2eb-43fd-a3c0-7388bafee566]
3.11: [code|https://github.com/iamaleksey/cassandra/commits/14766-3.11], [CI|https://circleci.com/workflow-run/1a858cdb-138d-471a-bef5-fc564a143fa4]
A small dtest for illustration (in addition to a regression unit test in C* repo) can be found [here|https://github.com/iamaleksey/cassandra-dtest/commits/14766].

> DESC order reads can fail to return the last Unfiltered in the partition in a legacy sstable
> --------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-14766
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-14766
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Local Write-Read Paths
>            Reporter: Aleksey Yeschenko
>            Assignee: Aleksey Yeschenko
>            Priority: Major
>             Fix For: 3.0.x, 3.11.x
>
>
> {{OldFormatDeserializer}}’s {{hasNext()}} method can and will consume two {{Unfiltered}} from the underlying iterator in some scenarios - intentionally.
> But in doing that it’s losing intermediate state of {{lastConsumedPosition}}. If that last block, when iterating backwards, only has two {{Unfiltered}}, the first one will be returned, and the last one won’t as the reverse iterator would incorrectly things that the deserisalizer is past the index block, despite still having one {{Unfiltered}} unreturned.



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

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