cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tyler Hobbs (JIRA)" <j...@apache.org>
Subject [jira] [Created] (CASSANDRA-10690) Secondary index does not process deletes unless columns are specified
Date Wed, 11 Nov 2015 19:55:10 GMT
Tyler Hobbs created CASSANDRA-10690:
---------------------------------------

             Summary: Secondary index does not process deletes unless columns are specified
                 Key: CASSANDRA-10690
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-10690
             Project: Cassandra
          Issue Type: Bug
          Components: index
            Reporter: Tyler Hobbs
             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)

Mime
View raw message