You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Evgeny Ryabitskiy (Updated) (JIRA)" <ji...@apache.org> on 2011/12/14 09:34:31 UTC
[jira] [Updated] (CASSANDRA-3630) Timeout exception while
IndexSearch on not valid column values
[ https://issues.apache.org/jira/browse/CASSANDRA-3630?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Evgeny Ryabitskiy updated CASSANDRA-3630:
-----------------------------------------
Component/s: Core
> Timeout exception while IndexSearch on not valid column values
> --------------------------------------------------------------
>
> Key: CASSANDRA-3630
> URL: https://issues.apache.org/jira/browse/CASSANDRA-3630
> Project: Cassandra
> Issue Type: Bug
> Components: Core
> Affects Versions: 0.7.0
> Reporter: Evgeny Ryabitskiy
> Fix For: 1.0.6
>
>
> While index_scan it is possible that column value is not valid. For example if it is a DynamicCompositeType there can be stored LongType and search is using DecimalType. In result cassandra has following behavior:
> 1) Cassandra server logs Fatal exception and stops MessageDeliveryTask execution without any response to client
> 2) Client wait response until timeout, at result application fails with TimeoutException
> I think this behavior is incorrect, and client should get reply about search request failure.
> Logs on server side:
> {quote}
> 14:37:57.924 [ReadStage:2] ERROR o.a.c.s.AbstractCassandraDaemon - Fatal exception in thread Thread[ReadStage:2,5,main]
> java.lang.RuntimeException: java.lang.RuntimeException: Comparator mismatch while comparing two DynamicCompositeType colum name
> at org.apache.cassandra.service.IndexScanVerbHandler.doVerb(IndexScanVerbHandler.java:51) ~[cassandra-all-1.0.3.jar:1.0.3]
> at org.apache.cassandra.net.MessageDeliveryTask.run(MessageDeliveryTask.java:59) ~[cassandra-all-1.0.3.jar:1.0.3]
> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [na:1.6.0_26]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [na:1.6.0_26]
> at java.lang.Thread.run(Thread.java:662) [na:1.6.0_26]
> Caused by: java.lang.RuntimeException: Comparator mismatch while comparing two DynamicCompositeType colum name
> at org.apache.cassandra.db.marshal.DynamicCompositeType.getNextComparator(DynamicCompositeType.java:124) ~[cassandra-all-1.0.3.jar:1.0.3]
> at org.apache.cassandra.db.marshal.AbstractCompositeType.compare(AbstractCompositeType.java:80) ~[cassandra-all-1.0.3.jar:1.0.3]
> at org.apache.cassandra.db.marshal.AbstractCompositeType.compare(AbstractCompositeType.java:37) ~[cassandra-all-1.0.3.jar:1.0.3]
> at org.apache.cassandra.db.index.SecondaryIndexSearcher.satisfies(SecondaryIndexSearcher.java:54) ~[cassandra-all-1.0.3.jar:1.0.3]
> at org.apache.cassandra.db.index.keys.KeysSearcher.search(KeysSearcher.java:230) ~[cassandra-all-1.0.3.jar:1.0.3]
> at org.apache.cassandra.db.index.SecondaryIndexManager.search(SecondaryIndexManager.java:505) ~[cassandra-all-1.0.3.jar:1.0.3]
> at org.apache.cassandra.service.IndexScanVerbHandler.doVerb(IndexScanVerbHandler.java:42) ~[cassandra-all-1.0.3.jar:1.0.3]
> ... 4 common frames omitted
> {quote}
> Logs on client side:
> {quote}
> org.scale7.cassandra.pelops.exceptions.TimedOutException: null
> at org.scale7.cassandra.pelops.exceptions.IExceptionTranslator$ExceptionTranslator.translate(IExceptionTranslator.java:55) ~[scale7-pelops-1.2-0.8.x.jar:na]
> at org.scale7.cassandra.pelops.Operand.tryOperation(Operand.java:116) ~[scale7-pelops-1.2-0.8.x.jar:na]
> at org.scale7.cassandra.pelops.Selector.getKeySlices(Selector.java:1877) ~[scale7-pelops-1.2-0.8.x.jar:na]
> ................................
> Caused by: org.apache.cassandra.thrift.TimedOutException: null
> at org.apache.cassandra.thrift.Cassandra$get_indexed_slices_result.read(Cassandra.java:14073) ~[cassandra-thrift-1.0.3.jar:1.0.3]
> at org.apache.cassandra.thrift.Cassandra$Client.recv_get_indexed_slices(Cassandra.java:810) ~[cassandra-thrift-1.0.3.jar:1.0.3]
> at org.apache.cassandra.thrift.Cassandra$Client.get_indexed_slices(Cassandra.java:782) ~[cassandra-thrift-1.0.3.jar:1.0.3]
> at org.scale7.cassandra.pelops.Selector$6.execute(Selector.java:1880) ~[scale7-pelops-1.2-0.8.x.jar:na]
> at org.scale7.cassandra.pelops.Selector$6.execute(Selector.java:1877) ~[scale7-pelops-1.2-0.8.x.jar:na]
> at org.scale7.cassandra.pelops.Operand.tryOperation(Operand.java:82) ~[scale7-pelops-1.2-0.8.x.jar:na]
> ... 9 common frames omitted
> {quote}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira