Internal error from malformed remove with supercolumns
------------------------------------------------------
Key: CASSANDRA-1866
URL: https://issues.apache.org/jira/browse/CASSANDRA-1866
Project: Cassandra
Issue Type: Bug
Components: API
Reporter: Jonathan Ellis
Assignee: Tyler Hobbs
Priority: Minor
Fix For: 0.7.0
>From the ML:
"I just call "remove" method where ColumnPath structure has "column_family" and
"column" members set ("super_column" not set)."
{code}
ERROR 17:57:46,924 Error in ThreadPoolExecutor
java.lang.RuntimeException: java.lang.ClassCastException:
org.apache.cassandra.db.DeletedColumn cannot be cast to
org.apache.cassandra.db.SuperColumn
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.ClassCastException: org.apache.cassandra.db.DeletedColumn
cannot be cast to org.apache.cassandra.db.SuperColumn
at
org.apache.cassandra.db.SuperColumnSerializer.serialize(SuperColumn.java:318)
at
org.apache.cassandra.db.SuperColumnSerializer.serialize(SuperColumn.java:298)
at
org.apache.cassandra.db.ColumnFamilySerializer.serializeForSSTable(ColumnFamilySerializer.java:82)
at
org.apache.cassandra.db.ColumnFamilySerializer.serialize(ColumnFamilySerializer.java:68)
at
org.apache.cassandra.db.RowMutationSerializer.freezeTheMaps(RowMutation.java:344)
at
org.apache.cassandra.db.RowMutationSerializer.serialize(RowMutation.java:355)
at
org.apache.cassandra.db.RowMutationSerializer.serialize(RowMutation.java:333)
at
org.apache.cassandra.db.RowMutation.getSerializedBuffer(RowMutation.java:269)
at org.apache.cassandra.db.RowMutation.apply(RowMutation.java:194)
at
org.apache.cassandra.service.StorageProxy$1.runMayThrow(StorageProxy.java:197)
at
org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30)
... 3 more
ERROR 17:57:46,928 Fatal exception in thread Thread[MUTATION_STAGE:2,5,main]
java.lang.RuntimeException: java.lang.ClassCastException:
org.apache.cassandra.db.DeletedColumn cannot be cast to
org.apache.cassandra.db.SuperColumn
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.ClassCastException: org.apache.cassandra.db.DeletedColumn
cannot be cast to org.apache.cassandra.db.SuperColumn
at
org.apache.cassandra.db.SuperColumnSerializer.serialize(SuperColumn.java:318)
at
org.apache.cassandra.db.SuperColumnSerializer.serialize(SuperColumn.java:298)
at
org.apache.cassandra.db.ColumnFamilySerializer.serializeForSSTable(ColumnFamilySerializer.java:82)
at
org.apache.cassandra.db.ColumnFamilySerializer.serialize(ColumnFamilySerializer.java:68)
at
org.apache.cassandra.db.RowMutationSerializer.freezeTheMaps(RowMutation.java:344)
at
org.apache.cassandra.db.RowMutationSerializer.serialize(RowMutation.java:355)
at
org.apache.cassandra.db.RowMutationSerializer.serialize(RowMutation.java:333)
at
org.apache.cassandra.db.RowMutation.getSerializedBuffer(RowMutation.java:269)
at org.apache.cassandra.db.RowMutation.apply(RowMutation.java:194)
at
org.apache.cassandra.service.StorageProxy$1.runMayThrow(StorageProxy.java:197)
at
org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30)
... 3 more
{code}
Fix: add system test to catch this & raise invalidrequestexception from
ThriftValidation
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.