[
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