[ https://issues.apache.org/jira/browse/CASSANDRA-9324?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Philip Thompson updated CASSANDRA-9324: --------------------------------------- Assignee: Tyler Hobbs > Map Mutation rejected by Cassandra: IllegalArgumentException > ------------------------------------------------------------ > > Key: CASSANDRA-9324 > URL: https://issues.apache.org/jira/browse/CASSANDRA-9324 > Project: Cassandra > Issue Type: Bug > Components: API > Environment: Windows 7, Cassandra 2.1.5 > Reporter: Mark Wick > Assignee: Tyler Hobbs > Priority: Minor > Fix For: 2.1.x > > > We use a collection (map<ascii,ascii>) in a CQL3 table. We write into that > cql3 table using thrift mutations, from a c++ application. We are prototyping > migrating from our current Cassandra (2.0.7) to 2.1.5, and are unable to > write rows to this cql3 table. We have no problems when we remove the writes > to the map column, and all other writes succeed in this case. Cassandra is > rejecting our writes and we are catching a TTransportException (no more data > to read). The below call stack is from the Cassandra instance that is > rejecting the write. > {code} > ERROR 14:08:10 Error occurred during processing of message. > java.lang.IllegalArgumentException: null > at java.nio.Buffer.limit(Unknown Source) ~[na:1.7.0_71] > at > org.apache.cassandra.utils.ByteBufferUtil.readBytes(ByteBufferUtil.java:543) > ~[apache-cassandra-2.1.5.jar:2.1.5] > at > org.apache.cassandra.serializers.CollectionSerializer.readValue(CollectionSerializer.java:124) > ~[apache-cassandra-2.1.5.jar:2.1.5] > at > org.apache.cassandra.serializers.MapSerializer.validateForNativeProtocol(MapSerializer.java:80) > ~[apache-cassandra-2.1.5.jar:2.1.5] > at > org.apache.cassandra.serializers.CollectionSerializer.validate(CollectionSerializer.java:61) > ~[apache-cassandra-2.1.5.jar:2.1.5] > at > org.apache.cassandra.db.marshal.AbstractType.validate(AbstractType.java:97) > ~[apache-cassandra-2.1.5.jar:2.1.5] > at > org.apache.cassandra.thrift.ThriftValidation.validateColumnData(ThriftValidation.java:449) > ~[apache-cassandra-2.1.5.jar:2.1.5] > at > org.apache.cassandra.thrift.ThriftValidation.validateColumnOrSuperColumn(ThriftValidation.java:318) > ~[apache-cassandra-2.1.5.jar:2.1.5] > at > org.apache.cassandra.thrift.ThriftValidation.validateMutation(ThriftValidation.java:385) > ~[apache-cassandra-2.1.5.jar:2.1.5] > at > org.apache.cassandra.thrift.CassandraServer.createMutationList(CassandraServer.java:861) > ~[apache-cassandra-2.1.5.jar:2.1.5] > at > org.apache.cassandra.thrift.CassandraServer.batch_mutate(CassandraServer.java:976) > ~[apache-cassandra-2.1.5.jar:2.1.5] > at > org.apache.cassandra.thrift.Cassandra$Processor$batch_mutate.getResult(Cassandra.java:3996) > ~[apache-cassandra-thrift-2.1.5.jar:2.1.5] > at > org.apache.cassandra.thrift.Cassandra$Processor$batch_mutate.getResult(Cassandra.java:3980) > ~[apache-cassandra-thrift-2.1.5.jar:2.1.5] > at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39) > ~[libthrift-0.9.2.jar:0.9.2] > at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39) > ~[libthrift-0.9.2.jar:0.9.2] > at > org.apache.cassandra.thrift.CustomTThreadPoolServer$WorkerProcess.run(CustomTThreadPoolServer.java:205) > ~[apache-cassandra-2.1.5.jar:2.1.5] > at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) > [na:1.7.0_71] > at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) > [na:1.7.0_71] > at java.lang.Thread.run(Unknown Source) [na:1.7.0_71]{code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)