[prev in list] [next in list] [prev in thread] [next in thread] 

List:       cassandra-commits
Subject:    [jira] [Commented] (CASSANDRA-11629) java.lang.UnsupportedOperationException when selecting rows wit
From:       "Alex Petrov (JIRA)" <jira () apache ! org>
Date:       2016-04-30 18:52:13
Message-ID: JIRA.12961382.1461275564000.79045.1462042333064 () Atlassian ! JIRA
[Download RAW message or body]


    [ https://issues.apache.org/jira/browse/CASSANDRA-11629?page=com.atlassian.jira.pl \
ugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15265427#comment-15265427 \
] 

Alex Petrov commented on CASSANDRA-11629:
-----------------------------------------

Oh looks like i edited the message instead of posting the new one:

I've made the changes to catch the null values on the "left" side (the ones that are \
read from the DB), the "right hand side" values are not allowed for filtering for \
now.

> [trunk|https://github.com/ifesdjeen/cassandra/tree/11629-trunk]|[utest|https://cassc \
> i.datastax.com/view/Dev/view/ifesdjeen/job/ifesdjeen-11629-trunk-testall/]|[dtest|ht \
> tps://cassci.datastax.com/view/Dev/view/ifesdjeen/job/ifesdjeen-11629-trunk-dtest/]|
> 
> [3.0|https://github.com/ifesdjeen/cassandra/tree/11629-3.0]|[utest|https://cassci.da \
> tastax.com/view/Dev/view/ifesdjeen/job/ifesdjeen-11629-3.0-testall/]|[dtest|https://cassci.datastax.com/view/Dev/view/ifesdjeen/job/ifesdjeen-11629-3.0-dtest/]|
> 

I have also added paging tests with counter columns in \
[dtest|https://github.com/riptano/cassandra-dtest/pull/956].

The {{dtest}} failures on trunk are unrelated. All branches (including dtest) are \
rebased.

> java.lang.UnsupportedOperationException when selecting rows with counters
> -------------------------------------------------------------------------
> 
> Key: CASSANDRA-11629
> URL: https://issues.apache.org/jira/browse/CASSANDRA-11629
> Project: Cassandra
> Issue Type: Bug
> Environment: Ubuntu 16.04 LTS
> Cassandra 3.0.5 Community Edition
> Reporter: Arnd Hannemann
> Assignee: Alex Petrov
> Labels: 3.0.5
> Fix For: 3.6, 3.0.x
> 
> 
> When selecting a non empty set of rows with counters a exception occurs:
> {code}
> WARN  [SharedPool-Worker-2] 2016-04-21 23:47:47,542 \
> AbstractLocalAwareExecutorService.java:169 - Uncaught exception on thread \
>                 Thread[SharedPool-Worker-2,5,main]: {}
> java.lang.RuntimeException: java.lang.UnsupportedOperationException
> at org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:2449) \
> ~[apache-cassandra-3.0.5.jar:3.0.5] at \
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) \
> ~[na:1.8.0_45] at org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$FutureTask.run(AbstractLocalAwareExecutorService.java:164) \
> ~[apache-cassandra-3.0.5.jar:3.0.5] at \
> org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$LocalSessionFutureTask.run(AbstractLocalAwareExecutorService.java:136) \
> [apache-cassandra-3.0.5.jar:3.0.5] at \
> org.apache.cassandra.concurrent.SEPWorker.run(SEPWorker.java:105) \
> [apache-cassandra-3.0.5.jar:3.0.5] at java.lang.Thread.run(Thread.java:745) \
> [na:1.8.0_45] Caused by: java.lang.UnsupportedOperationException: null
> at org.apache.cassandra.db.marshal.AbstractType.compareCustom(AbstractType.java:172) \
> ~[apache-cassandra-3.0.5.jar:3.0.5] at \
> org.apache.cassandra.db.marshal.AbstractType.compare(AbstractType.java:158) \
> ~[apache-cassandra-3.0.5.jar:3.0.5] at \
> org.apache.cassandra.db.marshal.AbstractType.compareForCQL(AbstractType.java:202) \
> ~[apache-cassandra-3.0.5.jar:3.0.5] at \
> org.apache.cassandra.cql3.Operator.isSatisfiedBy(Operator.java:169) \
> ~[apache-cassandra-3.0.5.jar:3.0.5] at \
> org.apache.cassandra.db.filter.RowFilter$SimpleExpression.isSatisfiedBy(RowFilter.java:619) \
> ~[apache-cassandra-3.0.5.jar:3.0.5] at \
> org.apache.cassandra.db.filter.RowFilter$CQLFilter$1IsSatisfiedFilter.applyToRow(RowFilter.java:258) \
> ~[apache-cassandra-3.0.5.jar:3.0.5] at \
> org.apache.cassandra.db.transform.BaseRows.applyOne(BaseRows.java:95) \
> ~[apache-cassandra-3.0.5.jar:3.0.5] at \
> org.apache.cassandra.db.transform.BaseRows.add(BaseRows.java:86) \
> ~[apache-cassandra-3.0.5.jar:3.0.5] at \
> org.apache.cassandra.db.transform.UnfilteredRows.add(UnfilteredRows.java:21) \
> ~[apache-cassandra-3.0.5.jar:3.0.5] at \
> org.apache.cassandra.db.transform.Transformation.add(Transformation.java:136) \
> ~[apache-cassandra-3.0.5.jar:3.0.5] at \
> org.apache.cassandra.db.transform.Transformation.apply(Transformation.java:102) \
> ~[apache-cassandra-3.0.5.jar:3.0.5] at \
> org.apache.cassandra.db.filter.RowFilter$CQLFilter$1IsSatisfiedFilter.applyToPartition(RowFilter.java:246) \
> ~[apache-cassandra-3.0.5.jar:3.0.5] at \
> org.apache.cassandra.db.filter.RowFilter$CQLFilter$1IsSatisfiedFilter.applyToPartition(RowFilter.java:236) \
> ~[apache-cassandra-3.0.5.jar:3.0.5] at \
> org.apache.cassandra.db.transform.BasePartitions.hasNext(BasePartitions.java:76) \
> ~[apache-cassandra-3.0.5.jar:3.0.5] at \
> org.apache.cassandra.db.partitions.UnfilteredPartitionIterators$Serializer.serialize(UnfilteredPartitionIterators.java:295) \
> ~[apache-cassandra-3.0.5.jar:3.0.5] at \
> org.apache.cassandra.db.ReadResponse$LocalDataResponse.build(ReadResponse.java:134) \
> ~[apache-cassandra-3.0.5.jar:3.0.5] at \
> org.apache.cassandra.db.ReadResponse$LocalDataResponse.<init>(ReadResponse.java:127) \
> ~[apache-cassandra-3.0.5.jar:3.0.5] at \
> org.apache.cassandra.db.ReadResponse$LocalDataResponse.<init>(ReadResponse.java:123) \
> ~[apache-cassandra-3.0.5.jar:3.0.5] at \
> org.apache.cassandra.db.ReadResponse.createDataResponse(ReadResponse.java:65) \
> ~[apache-cassandra-3.0.5.jar:3.0.5] at \
> org.apache.cassandra.db.ReadCommand.createResponse(ReadCommand.java:289) \
> ~[apache-cassandra-3.0.5.jar:3.0.5] at \
> org.apache.cassandra.service.StorageProxy$LocalReadRunnable.runMayThrow(StorageProxy.java:1792) \
> ~[apache-cassandra-3.0.5.jar:3.0.5] at \
> org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:2445) \
>                 ~[apache-cassandra-3.0.5.jar:3.0.5]
> ... 5 common frames omitted
> {code}
> Steps to reproduce:
> {code}
> arnd@kallisto:~$ cqlsh
> Warning: Timezone defined and 'pytz' module for timezone conversion not installed. \
> Timestamps will be displayed in UTC timezone. Connected to Test Cluster at \
> 127.0.0.1:9042. [cqlsh 5.0.1 | Cassandra 3.0.5 | CQL spec 3.4.0 | Native protocol \
> v4] Use HELP for help.
> cqlsh>  CREATE KEYSPACE ks_counters WITH replication = {'class': 'SimpleStrategy', \
> 'replication_factor': '1'}  AND durable_writes = true; cqlsh> use ks_counters;
> cqlsh:ks_counters> create table blub (id int, a counter, b counter, PRIMARY KEY \
> (id)); cqlsh:ks_counters> update blub set a=a+1 where id =1;
> cqlsh:ks_counters> select * from blub;
> id | a | b
> ----+---+------
> 1 | 1 | null
> (1 rows)
> cqlsh:ks_counters> select * from blub where b > 0 allow filtering;
> id | a | b
> ----+---+---
> (0 rows)
> cqlsh:ks_counters> select * from blub where a > 0 allow filtering;
> Traceback (most recent call last):
> File "/usr/bin/cqlsh.py", line 1316, in perform_simple_statement
> result = future.result()
> File "/usr/share/cassandra/lib/cassandra-driver-internal-only-3.0.0-6af642d.zip/cassandra-driver-3.0.0-6af642d/cassandra/cluster.py", \
> line 3122, in result raise self._final_exception
> ReadFailure: code=1300 [Replica(s) failed to execute read] message="Operation \
> failed - received 0 responses and 1 failures" info={'failures': 1, \
> 'received_responses': 0, 'required_responses': 1, 'consistency': 'ONE'} \
> cqlsh:ks_counters>  {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic