[ 
https://issues.apache.org/jira/browse/CASSANDRA-1130?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jonathan Ellis updated CASSANDRA-1130:
--------------------------------------

             Assignee: Sylvain Lebresne
        Fix Version/s: 0.7
    Affects Version/s: 0.7
             Priority: Major  (was: Critical)

> Cassandra throws Exceptions at startup when using TTL in SuperColumns
> ---------------------------------------------------------------------
>
>                 Key: CASSANDRA-1130
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1130
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.7
>            Reporter: Jignesh Dhruv
>            Assignee: Sylvain Lebresne
>             Fix For: 0.7
>
>
> Hello,
> I am trying to use TTL (timeToLive) feature in SuperColumns.
> My usecase is:
> - I have a SuperColumn and 3 subcolumns.
> - I try to expire data after 60 seconds.
> While Cassandra is up and running, I am successfully able to push and read 
> data without any problems. Data compaction and all occurs fine. After 
> inserting say about 100000 records, I stop Cassandra while data is still 
> coming.
> On startup Cassandra throws an exception and won't start up. (This happens 1 
> in every 3 times). Exception varies like:
> - EOFException while reading data
> - negative value encountered exception
> - Heap Space Exception
> Cassandra simply won't start up.
> Again I get this problem only when I use TTL with SuperColumns. There are no 
> issues with using TTL with regular Columns.
> I tried to diagnose the problem and it seems to happen on startup when it 
> sees a Column that is marked Deleted and its trying to read data. Its off by 
> some bytes and hence all these exceptions.
> Caused by: java.io.IOException: Corrupt (negative) value length encountered
>         at 
> org.apache.cassandra.utils.FBUtilities.readByteArray(FBUtilities.java:317)
>         at 
> org.apache.cassandra.db.ColumnSerializer.deserialize(ColumnSerializer.java:84)
>         at 
> org.apache.cassandra.db.SuperColumnSerializer.deserialize(SuperColumn.java:336)
>         at 
> org.apache.cassandra.db.SuperColumnSerializer.deserialize(SuperColumn.java:285)
>         at 
> org.apache.cassandra.db.filter.SSTableSliceIterator$ColumnGroupReader.getNextBlock(SSTableSliceIterator.java:235)
>         at 
> org.apache.cassandra.db.filter.SSTableSliceIterator$ColumnGroupReader.pollColumn(SSTableSliceIterator.java:195)
>         ... 18 more
> Let me know if you need more information.
> Thanks,
> Jignesh

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to