[
https://issues.apache.org/jira/browse/CASSANDRA-7787?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14100851#comment-14100851
]
Berenguer Blasi commented on CASSANDRA-7787:
--------------------------------------------
Let me give some more context: In Keyspace.java/indexRow() it will try to index
a PKOnly+RowMarker row only passing through the PK bit and not the row marker.
So if you 'fix' the indexes() method on the 2index to allow for the row marker
to get through you get the NPE. I hope this gives a better picture.
> 2i index indexing the cql3 row marker throws NPE
> ------------------------------------------------
>
> Key: CASSANDRA-7787
> URL: https://issues.apache.org/jira/browse/CASSANDRA-7787
> Project: Cassandra
> Issue Type: Bug
> Components: Core
> Reporter: Berenguer Blasi
> Priority: Minor
> Fix For: 2.0.10
>
> Attachments: cassandra-2.0-7787.txt
>
>
> If you have a secondary index implementation that 'indexes()' the cql3 row
> marker you get a NPE in SecondaryIndexManager/deleteFromIndexes() as the call
> to getColumnDefinitionFromColumnName() returns null which is not checked for.
> This has been detected in the context of inserting PK only rows, where the
> row marker is expected to be present. When 'indexes()' returned 'false', the
> row would mistakenly get deleted as the row marker didn't go through.
> If 'indexes()' returns 'true' the row marker goes through but you get a NPE.
--
This message was sent by Atlassian JIRA
(v6.2#6252)