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

Jason Brown commented on CASSANDRA-5487:
----------------------------------------

Seemed to have lost my comment from the other day, but code lgtm. I tested 
locally, and upgrading from head of 1.2 to this branch was not a problem. 
However, upgrading from head of 1.1 failed with this:

{code} INFO 10:40:47,602 Opening 
/var/lib/cassandra/data/system/schema_columns/system-schema_columns-hf-1 (317 
bytes)
 INFO 10:40:47,621 Opening 
/var/lib/cassandra/data/system/LocationInfo/system-LocationInfo-hf-2 (163 bytes)
 INFO 10:40:47,621 Opening 
/var/lib/cassandra/data/system/LocationInfo/system-LocationInfo-hf-1 (234 bytes)
ERROR 10:40:47,905 Exception encountered during startup
java.lang.NullPointerException
        at 
org.apache.cassandra.io.sstable.IndexHelper.skipSSTableBloomFilter(IndexHelper.java:43)
        at 
org.apache.cassandra.db.columniterator.IndexedSliceReader.<init>(IndexedSliceReader.java:111)
        at 
org.apache.cassandra.db.columniterator.SSTableSliceIterator.createReader(SSTableSliceIterator.java:68)
        at 
org.apache.cassandra.db.columniterator.SSTableSliceIterator.<init>(SSTableSliceIterator.java:44)
        at 
org.apache.cassandra.db.filter.SliceQueryFilter.getSSTableColumnIterator(SliceQueryFilter.java:101)
        at 
org.apache.cassandra.db.filter.QueryFilter.getSSTableColumnIterator(QueryFilter.java:68)
        at 
org.apache.cassandra.db.CollationController.collectAllData(CollationController.java:274)
        at 
org.apache.cassandra.db.CollationController.getTopLevelColumns(CollationController.java:65)
        at 
org.apache.cassandra.db.ColumnFamilyStore.getTopLevelColumns(ColumnFamilyStore.java:1357)
        at 
org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1214)
        at 
org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1126)
        at 
org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1116)
        at 
org.apache.cassandra.config.ColumnDefinition.readSchema(ColumnDefinition.java:248)
        at 
org.apache.cassandra.config.CFMetaData.fromSchema(CFMetaData.java:1427)
        at 
org.apache.cassandra.config.KSMetaData.deserializeColumnFamilies(KSMetaData.java:306)
        at 
org.apache.cassandra.config.KSMetaData.fromSchema(KSMetaData.java:287)
        at org.apache.cassandra.db.DefsTable.loadFromTable(DefsTable.java:155)
        at 
org.apache.cassandra.config.DatabaseDescriptor.loadSchemas(DatabaseDescriptor.java:563)
        at 
org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:231)
        at 
org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:413)
        at 
org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:456)
{code}

Will poke into what's going wrong
                
> Promote row-level tombstones to index file
> ------------------------------------------
>
>                 Key: CASSANDRA-5487
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-5487
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>    Affects Versions: 1.2.0
>            Reporter: Jonathan Ellis
>            Assignee: Jonathan Ellis
>             Fix For: 2.0
>
>         Attachments: 5487.txt
>
>
> The idea behind promoted indexes (CASSANDRA-2319) was we could skip a seek to 
> the row header by keeping the column index in the index file.  But, we skip 
> writing the row-level tombstone to the index file unless it also has some 
> column data.  So unless we read the tombstone from the data file (where it is 
> guaranteed to exist) we can return incorrect results.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to