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

Sam Tunnicliffe commented on CASSANDRA-10690:
---------------------------------------------

+1 on the patch, with 2 minuscule nits:
* Typo in the javadoc of {{Index::indexerFor}} - s/partiticular/particular
* I would also amend slightly the new comment in {{CassandraIndex::indexerFor}} 
to make it clear that stale entries are actually removed from the index on read 
as well as during compaction.


> 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
>            Assignee: Sylvain Lebresne
>             Fix For: 3.0.1, 3.1
>
>
> 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)

Reply via email to