incubator-cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Aaron Morton <aa...@thelastpickle.com>
Subject Re: Error: Unable to search across multiple secondary index types
Date Thu, 21 Nov 2013 06:48:13 GMT
> java.lang.RuntimeException: java.lang.RuntimeException: Unable to search across multiple
secondary index types
A query that used two secondary indexed columns would require query plan to determine the
most efficient approach. We don’t support features like that. 

> I would expect an empty response, but instead I get "Request did not complete within
rpc_timeout.” info on cqlsh interface and there is an error in cassandra logs:
That sounds like a bug, you should have gotten an error. 

Could you raise a bug on https://issues.apache.org/jira/browse/CASSANDRA

Cheers

-----------------
Aaron Morton
New Zealand
@aaronmorton

Co-Founder & Principal Consultant
Apache Cassandra Consulting
http://www.thelastpickle.com

On 15/11/2013, at 10:22 pm, sielski <sielski@man.poznan.pl> wrote:

> Hello,
> 
> I’ve installed Cassandra 2.0.2 and I’m trying to query a cassandra table using a
SELECT statement with two WHERE clauses on columns with secondary indexes but Cassandra throws
an error as in the subject.
> It’s easy to reproduce this problem. My table structure is as follows:
> CREATE TABLE test (c1 VARCHAR, c2 VARCHAR, c3 VARCHAR, PRIMARY KEY (c1, c2);
> CREATE INDEX test_i1 ON test (c2);
> CREATE INDEX test_i2 ON test (c3); 
> 
> Then I execute a simple query on an empty table:
> SELECT * FROM test WHERE c2='whatever' AND c3 ='whatever' ALLOW FILTERING;
> 
> I would expect an empty response, but instead I get "Request did not complete within
rpc_timeout.” info on cqlsh interface and there is an error in cassandra logs:
> ERROR 09:57:36,394 Exception in thread Thread[ReadStage:35,5,main]
> java.lang.RuntimeException: java.lang.RuntimeException: Unable to search across multiple
secondary index types
> 	at org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1931)
> 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> 	at java.lang.Thread.run(Thread.java:744)
> Caused by: java.lang.RuntimeException: Unable to search across multiple secondary index
types
> 	at org.apache.cassandra.db.index.SecondaryIndexManager.search(SecondaryIndexManager.java:535)
> 	at org.apache.cassandra.db.ColumnFamilyStore.search(ColumnFamilyStore.java:1649)
> 	at org.apache.cassandra.db.RangeSliceCommand.executeLocally(RangeSliceCommand.java:135)
> 	at org.apache.cassandra.service.StorageProxy$LocalRangeSliceRunnable.runMayThrow(StorageProxy.java:1414)
> 	at org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1927)
> 
> Is it a bug or there is a reason why I cannot execute such a query on this model? I saw
an issue https://issues.apache.org/jira/browse/CASSANDRA-5851 which is similar to mine but
it’s marked as resolved in 2.0.0 and I’m using the most recent version.
> 
> — 
> Regards,
> Krzysztof Sielski


Mime
View raw message