cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sylvain Lebresne (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (CASSANDRA-11905) Index building fails to start CFS.readOrdering when reading
Date Mon, 30 May 2016 14:19:12 GMT

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

Sylvain Lebresne updated CASSANDRA-11905:
-----------------------------------------
       Resolution: Fixed
    Fix Version/s:     (was: 3.0.x)
                       (was: 3.x)
                   3.0.7
                   3.6
           Status: Resolved  (was: Patch Available)

bq. There is a typo at line 122 of {{SinglePartitionSliceCommandTest}}

Thanks, and sorry about that. There was a few failures initially due to some test using an
empty controller (which, while probably inconsequential in those short tests, was wrong, and
so it validates the changes are catching misusages) and I fixed that one too quickly.

So I committed this and included 3.6 as discussed above. I did only merged the 3.0 patch for
3.6 and 3.7 and left the refactor to trunk: no point in taking risks and arguably such small
refactor belongs to trunk.


> Index building fails to start CFS.readOrdering when reading
> -----------------------------------------------------------
>
>                 Key: CASSANDRA-11905
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-11905
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>            Priority: Critical
>             Fix For: 3.6, 3.0.7
>
>
> This code for indexing partition when building index in 3.0 is:
> {noformat}
> SinglePartitionReadCommand cmd = SinglePartitionReadCommand.fullPartitionRead(cfs.metadata,
FBUtilities.nowInSeconds(), key);
> try (OpOrder.Group opGroup = cfs.keyspace.writeOrder.start();
>       UnfilteredRowIterator partition = cmd.queryMemtableAndDisk(cfs, opGroup))
> {
>     cfs.indexManager.indexPartition(partition, opGroup, indexes, cmd.nowInSec());
> }
> {noformat}
> which is clearly incorrect as the {{OpOrder}} that {{queryMemtableAndDisk}} expects is
the one from {{cfs.readOrdering}}, not the one for writes on the keyspace.
> This wasn't a problem prior to 3.0 as the similar code was using the pager, which ended
up properly taking the read {{OpOrder}} internally but I messed this up in CASSANDRA-8099.
> Thanks to [~Stefania] for pointing that out.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message