You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "David Viet (JIRA)" <ji...@apache.org> on 2013/12/25 06:42:50 UTC

[jira] [Updated] (CASSANDRA-6524) Trigger ERROR with java.lang.IllegalArgumentException at java.nio.Buffer.limit(Buffer.java:267)

     [ https://issues.apache.org/jira/browse/CASSANDRA-6524?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

David Viet updated CASSANDRA-6524:
----------------------------------

    Summary: Trigger ERROR with java.lang.IllegalArgumentException at java.nio.Buffer.limit(Buffer.java:267)  (was: Trigger )

> Trigger ERROR with java.lang.IllegalArgumentException at java.nio.Buffer.limit(Buffer.java:267)
> -----------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-6524
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-6524
>             Project: Cassandra
>          Issue Type: Bug
>         Environment: Cassandra 2.0.2 - Windows 7 64bit
>            Reporter: David Viet
>
> I follow the Trigger example of Cassandra.
> *My test Column Family*
> CREATE TABLE test (
>   key text,
>   value text,
>   PRIMARY KEY (key)
> )
> *My index for test Column Family*
> CREATE TABLE sampleindex (
>   name text,
>   value text,
>   PRIMARY KEY (name)
> )
> I try to add (key, key) to this index CF.
> *mutation.add("sampleindex", key, key ,System.currentTimeMillis());*
> This line of code always cause error:
>  WARN 14:19:00,854 Exception
> java.lang.IllegalArgumentException
>         at java.nio.Buffer.limit(Buffer.java:267)
>         at org.apache.cassandra.db.marshal.AbstractCompositeType.getBytes(AbstractCompositeType.java:55)
>         at org.apache.cassandra.db.marshal.AbstractCompositeType.getWithShortLength(AbstractCompositeType.java:64)
>         at org.apache.cassandra.db.marshal.AbstractCompositeType.compare(AbstractCompositeType.java:82)
>         at org.apache.cassandra.db.marshal.AbstractCompositeType.compare(AbstractCompositeType.java:35)
>         at java.util.TreeMap.compare(TreeMap.java:1188)
>         at java.util.TreeMap.put(TreeMap.java:531)
>         at org.apache.cassandra.db.TreeMapBackedSortedColumns.addColumn(TreeMapBackedSortedColumns.java:90)
>         at org.apache.cassandra.db.ColumnFamily.addColumn(ColumnFamily.java:116)
>         at org.apache.cassandra.db.ColumnFamily.addColumn(ColumnFamily.java:128)
>         at org.apache.cassandra.db.RowMutation.add(RowMutation.java:144)
>         at org.apache.cassandra.db.RowMutation.add(RowMutation.java:154)
>         at org.apache.cassandra.triggers.InvertedIndex.augment(InvertedIndex.java:83)
>         at org.apache.cassandra.triggers.TriggerExecutor.execute(TriggerExecutor.java:123)
>         at org.apache.cassandra.triggers.TriggerExecutor.execute(TriggerExecutor.java:73)
>         at org.apache.cassandra.service.StorageProxy.mutateWithTriggers(StorageProxy.java:567)
>         at org.apache.cassandra.cql3.statements.ModificationStatement.executeWithoutCondition(ModificationStatement.java:379)
>         at org.apache.cassandra.cql3.statements.ModificationStatement.execute(ModificationStatement.java:363)
>         at org.apache.cassandra.cql3.QueryProcessor.processStatement(QueryProcessor.java:129)
>         at org.apache.cassandra.cql3.QueryProcessor.process(QueryProcessor.java:145)
>         at org.apache.cassandra.cql3.QueryProcessor.process(QueryProcessor.java:136)
>         at org.apache.cassandra.thrift.CassandraServer.execute_cql3_query(CassandraServer.java:1936)
>         at org.apache.cassandra.thrift.Cassandra$Processor$execute_cql3_query.getResult(Cassandra.java:4394)
>         at org.apache.cassandra.thrift.Cassandra$Processor$execute_cql3_query.getResult(Cassandra.java:4378)
>         at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39)
>         at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39)
>         at org.apache.cassandra.thrift.CustomTThreadPoolServer$WorkerProcess.run(CustomTThreadPoolServer.java:194)
>         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
>         at java.lang.Thread.run(Thread.java:722)
> I think the main reason is from https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/db/marshal/AbstractCompositeType.java
> {code:title=AbstractCompositeType.java|borderStyle=solid}
> public static ByteBuffer getBytes(ByteBuffer bb, int length)
> {
> ByteBuffer copy = bb.duplicate();
> copy.limit(copy.position() + length);
> bb.position(bb.position() + length);
> return copy;
> }
> {code}
> Please consider this problem. Thank you.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)