Seems to be internal to java/cassandra itself.
I have some tests and I want to make sure that I have a "clean slate"
each time I run the test. Clean as far as my code cares is that "value"
is not defined. I'm running "bin/cassandra -f" with the default
install/options. So at the beginning of my test I run:
$rc = $c->mutate([$key], family => 'Standard1', deletions => { byname =>
['value']});
Alas, the cassandra terminal/cassandra itself barfs out:
ERROR 10:59:15,779 Error in ThreadPoolExecutor
java.lang.RuntimeException: java.lang.UnsupportedOperationException:
This operation is not supported for Super Columns.
at
org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:34)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.UnsupportedOperationException: This operation is
not supported for Super Columns.
at org.apache.cassandra.db.SuperColumn.timestamp(SuperColumn.java:137)
at
org.apache.cassandra.db.ColumnSerializer.serialize(ColumnSerializer.java:65)
at
org.apache.cassandra.db.ColumnSerializer.serialize(ColumnSerializer.java:29)
at
org.apache.cassandra.db.ColumnFamilySerializer.serializeForSSTable(ColumnFamilySerializer.java:87)
at
org.apache.cassandra.db.ColumnFamilySerializer.serialize(ColumnFamilySerializer.java:73)
at
org.apache.cassandra.db.RowMutationSerializer.freezeTheMaps(RowMutation.java:334)
at
org.apache.cassandra.db.RowMutationSerializer.serialize(RowMutation.java:346)
at
org.apache.cassandra.db.RowMutationSerializer.serialize(RowMutation.java:319)
at
org.apache.cassandra.db.RowMutation.getSerializedBuffer(RowMutation.java:275)
at org.apache.cassandra.db.RowMutation.apply(RowMutation.java:200)
at
org.apache.cassandra.service.StorageProxy$3.runMayThrow(StorageProxy.java:310)
at
org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30)
... 3 more
ERROR 10:59:15,786 Fatal exception in thread
Thread[ROW-MUTATION-STAGE:21,5,main]
java.lang.RuntimeException: java.lang.UnsupportedOperationException:
This operation is not supported for Super Columns.
at
org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:34)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.UnsupportedOperationException: This operation is
not supported for Super Columns.
at org.apache.cassandra.db.SuperColumn.timestamp(SuperColumn.java:137)
at
org.apache.cassandra.db.ColumnSerializer.serialize(ColumnSerializer.java:65)
at
org.apache.cassandra.db.ColumnSerializer.serialize(ColumnSerializer.java:29)
at
org.apache.cassandra.db.ColumnFamilySerializer.serializeForSSTable(ColumnFamilySerializer.java:87)
at
org.apache.cassandra.db.ColumnFamilySerializer.serialize(ColumnFamilySerializer.java:73)
at
org.apache.cassandra.db.RowMutationSerializer.freezeTheMaps(RowMutation.java:334)
at
org.apache.cassandra.db.RowMutationSerializer.serialize(RowMutation.java:346)
at
org.apache.cassandra.db.RowMutationSerializer.serialize(RowMutation.java:319)
at
org.apache.cassandra.db.RowMutation.getSerializedBuffer(RowMutation.java:275)
at org.apache.cassandra.db.RowMutation.apply(RowMutation.java:200)
at
org.apache.cassandra.service.StorageProxy$3.runMayThrow(StorageProxy.java:310)
at
org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30)
... 3 more
Anyone have any ideas what I'm doing wrong? The value field is just a
json encoded digit so something like ("30") not a real supercolumn but
the Net::Cassandra::Easy docs didn't have any examples of removing a non
supercolumns data. Really what I'd like to do is delete the whole row,
but again I didn't find any examples of how to do this.