[
https://issues.apache.org/jira/browse/CASSANDRA-1866?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jonathan Ellis resolved CASSANDRA-1866.
---------------------------------------
Resolution: Fixed
committed, thanks
> 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.6.9, 0.7.0
>
> Attachments: 1866-0.6-test.txt, 1866-0.6.txt, 1866-0.7-test.txt,
> 1866-0.7.txt
>
>
> 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.