You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cassandra.apache.org by Dan Kuebrich <da...@gmail.com> on 2011/08/06 16:29:25 UTC

strange json2sstable cast exception

Having run into a recurring compaction problem due to a corrupt sstable
(perceived row size was 13 petabytes or something), I sstable2json -x 'd
 the key and am now trying to re-import the sstable without it.  However,
I'm running into the following exception:

Importing 2882 keys...
java.lang.ClassCastException: org.apache.cassandra.db.ExpiringColumn cannot
be cast to org.apache.cassandra.db.SuperColumn
at
org.apache.cassandra.db.SuperColumnSerializer.serialize(SuperColumn.java:363)
 at
org.apache.cassandra.db.SuperColumnSerializer.serialize(SuperColumn.java:347)
at
org.apache.cassandra.db.ColumnFamilySerializer.serializeForSSTable(ColumnFamilySerializer.java:88)
 at
org.apache.cassandra.db.ColumnFamilySerializer.serializeWithIndexes(ColumnFamilySerializer.java:107)
at
org.apache.cassandra.io.sstable.SSTableWriter.append(SSTableWriter.java:147)
 at
org.apache.cassandra.tools.SSTableImport.importUnsorted(SSTableImport.java:290)
at
org.apache.cassandra.tools.SSTableImport.importJson(SSTableImport.java:252)
 at org.apache.cassandra.tools.SSTableImport.main(SSTableImport.java:476)
ERROR: org.apache.cassandra.db.ExpiringColumn cannot be cast to
org.apache.cassandra.db.SuperColumn

The CF is a SuperColumnFamily, if that's relevant.

1. What should I do about this problem?

2. (somewhat unrelated) Our usage of this SCF has moved away from requiring
"super"-ness.  Aside from missing out on the potential for future seconary
indexes, are we suffering any sort of operational/performance hit from this
classification?

Re: strange json2sstable cast exception

Posted by Dan Kuebrich <da...@gmail.com>.
Forgot to mention node is: new install of 0.8.2, though data was streamed
over from nodes that have been upgraded over time from 0.7.
On Aug 6, 2011 10:47 AM, "Jonathan Ellis" <jb...@gmail.com> wrote:
> You should probably upgrade, it looks like you have a version that
> doesn't support sstable2json with expiring columns.
>
> On Sat, Aug 6, 2011 at 9:29 AM, Dan Kuebrich <da...@gmail.com>
wrote:
>> Having run into a recurring compaction problem due to a corrupt sstable
>> (perceived row size was 13 petabytes or something), I sstable2json -x 'd
>>  the key and am now trying to re-import the sstable without it.  However,
>> I'm running into the following exception:
>> Importing 2882 keys...
>> java.lang.ClassCastException: org.apache.cassandra.db.ExpiringColumn
cannot
>> be cast to org.apache.cassandra.db.SuperColumn
>> at
>>
org.apache.cassandra.db.SuperColumnSerializer.serialize(SuperColumn.java:363)
>> at
>>
org.apache.cassandra.db.SuperColumnSerializer.serialize(SuperColumn.java:347)
>> at
>>
org.apache.cassandra.db.ColumnFamilySerializer.serializeForSSTable(ColumnFamilySerializer.java:88)
>> at
>>
org.apache.cassandra.db.ColumnFamilySerializer.serializeWithIndexes(ColumnFamilySerializer.java:107)
>> at
>>
org.apache.cassandra.io.sstable.SSTableWriter.append(SSTableWriter.java:147)
>> at
>>
org.apache.cassandra.tools.SSTableImport.importUnsorted(SSTableImport.java:290)
>> at
>>
org.apache.cassandra.tools.SSTableImport.importJson(SSTableImport.java:252)
>> at org.apache.cassandra.tools.SSTableImport.main(SSTableImport.java:476)
>> ERROR: org.apache.cassandra.db.ExpiringColumn cannot be cast to
>> org.apache.cassandra.db.SuperColumn
>> The CF is a SuperColumnFamily, if that's relevant.
>> 1. What should I do about this problem?
>> 2. (somewhat unrelated) Our usage of this SCF has moved away from
requiring
>> "super"-ness.  Aside from missing out on the potential for future
seconary
>> indexes, are we suffering any sort of operational/performance hit from
this
>> classification?
>
>
>
> --
> Jonathan Ellis
> Project Chair, Apache Cassandra
> co-founder of DataStax, the source for professional Cassandra support
> http://www.datastax.com

Re: strange json2sstable cast exception

Posted by Jonathan Ellis <jb...@gmail.com>.
You should probably upgrade, it looks like you have a version that
doesn't support sstable2json with expiring columns.

On Sat, Aug 6, 2011 at 9:29 AM, Dan Kuebrich <da...@gmail.com> wrote:
> Having run into a recurring compaction problem due to a corrupt sstable
> (perceived row size was 13 petabytes or something), I sstable2json -x 'd
>  the key and am now trying to re-import the sstable without it.  However,
> I'm running into the following exception:
> Importing 2882 keys...
> java.lang.ClassCastException: org.apache.cassandra.db.ExpiringColumn cannot
> be cast to org.apache.cassandra.db.SuperColumn
> at
> org.apache.cassandra.db.SuperColumnSerializer.serialize(SuperColumn.java:363)
> at
> org.apache.cassandra.db.SuperColumnSerializer.serialize(SuperColumn.java:347)
> at
> org.apache.cassandra.db.ColumnFamilySerializer.serializeForSSTable(ColumnFamilySerializer.java:88)
> at
> org.apache.cassandra.db.ColumnFamilySerializer.serializeWithIndexes(ColumnFamilySerializer.java:107)
> at
> org.apache.cassandra.io.sstable.SSTableWriter.append(SSTableWriter.java:147)
> at
> org.apache.cassandra.tools.SSTableImport.importUnsorted(SSTableImport.java:290)
> at
> org.apache.cassandra.tools.SSTableImport.importJson(SSTableImport.java:252)
> at org.apache.cassandra.tools.SSTableImport.main(SSTableImport.java:476)
> ERROR: org.apache.cassandra.db.ExpiringColumn cannot be cast to
> org.apache.cassandra.db.SuperColumn
> The CF is a SuperColumnFamily, if that's relevant.
> 1. What should I do about this problem?
> 2. (somewhat unrelated) Our usage of this SCF has moved away from requiring
> "super"-ness.  Aside from missing out on the potential for future seconary
> indexes, are we suffering any sort of operational/performance hit from this
> classification?



-- 
Jonathan Ellis
Project Chair, Apache Cassandra
co-founder of DataStax, the source for professional Cassandra support
http://www.datastax.com