You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Sylvain Lebresne (JIRA)" <ji...@apache.org> on 2015/11/18 15:39:11 UTC
[jira] [Updated] (CASSANDRA-10690) Remove unclear indexes() method
from 2ndary index API
[ https://issues.apache.org/jira/browse/CASSANDRA-10690?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sylvain Lebresne updated CASSANDRA-10690:
-----------------------------------------
Summary: Remove unclear indexes() method from 2ndary index API (was: Secondary index does not process deletes unless columns are specified)
> Remove unclear indexes() method from 2ndary index API
> -----------------------------------------------------
>
> Key: CASSANDRA-10690
> URL: https://issues.apache.org/jira/browse/CASSANDRA-10690
> Project: Cassandra
> Issue Type: Bug
> Components: Local Write-Read Paths
> Reporter: Tyler Hobbs
> Fix For: 3.2
>
>
> The new secondary index API does not notify indexes of single-row or slice deletions unless specific columns are deleted. I believe the problem is that in {{SecondaryIndexManager.newUpdateTransaction()}}, we skip indexes unless {{index.indexes(update.columns())}}. When no columns are specified in the the deletion, {{update.columns()}} is empty, which causes all indexes to be skipped.
> I think the correct fix is to do something like this in the {{ModificationStatement}} constructor:
> {code}
> if (type == StatementType.DELETE && modifiedColumns.isEmpty())
> modifiedColumns = cfm.partitionColumns();
> {code}
> However, I'm not sure if that may have unintended side-effects. What do you think, [~slebresne]?
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)