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