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