cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Matthew F. Dennis (JIRA)" <j...@apache.org>
Subject [jira] Commented: (CASSANDRA-1139) batch_mutate Deletion with column family type mismatch causes RuntimeException
Date Tue, 01 Jun 2010 18:43:38 GMT

    [ https://issues.apache.org/jira/browse/CASSANDRA-1139?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12874145#action_12874145
] 

Matthew F. Dennis commented on CASSANDRA-1139:
----------------------------------------------

patch against trunk r950099

> batch_mutate Deletion with column family type mismatch causes RuntimeException
> ------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-1139
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1139
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.6
>         Environment: Linux & Python 2.6
>            Reporter: tholzer
>            Assignee: Matthew F. Dennis
>            Priority: Minor
>             Fix For: 0.6.3
>
>         Attachments: CASSANDRA-1139.patch
>
>
> When specifying a super column family name inside a Deletion and a standard column family
name in the mutations dictionary, we get a RuntimeException in the server and a TimedOutException
on the client:
> {noformat}
> ERROR 14:22:29,757 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:337)
>         at org.apache.cassandra.db.RowMutationSerializer.serialize(RowMutation.java:349)
>         at org.apache.cassandra.db.RowMutationSerializer.serialize(RowMutation.java:322)
>         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 14:22:29,757 Fatal exception in thread Thread[ROW-MUTATION-STAGE:39,5,main]
> {noformat}
> {noformat}
> Traceback (most recent call last):
>   File "./test.py", line 15, in <module>
>     client.batch_mutate("Keyspace1", mutations, ConsistencyLevel.QUORUM)
>   File "cassandra/Cassandra.py", line 771, in batch_mutate
>     self.recv_batch_mutate()
>   File "cassandra/Cassandra.py", line 798, in recv_batch_mutate
>     raise result.te
> cassandra.ttypes.TimedOutException: TimedOutException()
> {noformat}
> To reproduce:
> {noformat}
> from thrift.transport.TSocket import TSocket
> from thrift.protocol.TBinaryProtocol import TBinaryProtocol
> from cassandra.Cassandra import Client
> from cassandra.ttypes import Deletion, Mutation, ConsistencyLevel
> if __name__ == "__main__":
>     tsocket = TSocket('localhost', 9160)
>     tsocket.open()
>     tprotocol = TBinaryProtocol(tsocket)
>     client = Client(tprotocol)
>     deletion = Deletion(1, 'supercolumn', None)
>     mutation = Mutation(deletion=deletion)
>     mutations = { 'key' : { 'Standard1' : [ mutation ] } }
>     client.batch_mutate("Keyspace1", mutations, ConsistencyLevel.QUORUM)
> {noformat}

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


Mime
View raw message