Quorum read timeout stemming from TcpConnectionManager initialization
---------------------------------------------------------------------
Key: CASSANDRA-381
URL: https://issues.apache.org/jira/browse/CASSANDRA-381
Project: Cassandra
Issue Type: Bug
Components: Core
Affects Versions: 0.4
Environment: ubuntu linux (#42-Ubuntu SMP Fri Apr 17 02:48:10 UTC
2009) running in VMWare Fusion virtual machine.
Reporter: Phillip Michalak
A quorum read from the Cassandra-remote tool times out on certain queries,
depending on the key and node at which the query is directed. An example of a
failed query and its output:
vad...@vadmin:~/cassandra$ interface/gen-py/cassandra/Cassandra-remote -h
192.168.133.130:9160 get 'MockElementLibrary' '0401318uuuuruepwdcznr'
"ColumnPath('strings', None, 'id')" 2
/usr/local/lib/python2.6/dist-packages/thrift/Thrift.py:58: DeprecationWarning:
BaseException.message has been deprecated as of Python 2.6
self.message = message
/usr/local/lib/python2.6/dist-packages/thrift/Thrift.py:99: DeprecationWarning:
BaseException.message has been deprecated as of Python 2.6
self.message = iprot.readString();
Traceback (most recent call last):
File "interface/gen-py/cassandra/Cassandra-remote", line 93, in <module>
pp.pprint(client.get(args[0],args[1],eval(args[2]),eval(args[3]),))
File
"/home/vadmin/cassandra-0.4.0-beta1/interface/gen-py/cassandra/Cassandra.py",
line 182, in get
return self.recv_get()
File
"/home/vadmin/cassandra-0.4.0-beta1/interface/gen-py/cassandra/Cassandra.py",
line 201, in recv_get
raise x
thrift.Thrift.TApplicationException/usr/local/lib/python2.6/dist-packages/thrift/Thrift.py:76:
DeprecationWarning: BaseException.message has been deprecated as of Python 2.6
if self.message:
/usr/local/lib/python2.6/dist-packages/thrift/Thrift.py:77: DeprecationWarning:
BaseException.message has been deprecated as of Python 2.6
return self.message
: Internal error processing get
The relevant portion of the log file generated from this request:
DEBUG [pool-1-thread-22] 2009-08-19 16:54:57,618 CassandraServer.java (line
221) get
DEBUG [pool-1-thread-22] 2009-08-19 16:54:57,618 StorageProxy.java (line 420)
strongread reading data for SliceByNamesReadCommand(table='MockElementLibrary',
key='0401318uuuuruepwdcznr',
columnParent='QueryPath(columnFamilyName='strings', superColumnName='null',
columnName='null')', columns=[id,]) from 38...@null
DEBUG [pool-1-thread-22] 2009-08-19 16:54:57,619 StorageProxy.java (line 427)
strongread reading digest for
SliceByNamesReadCommand(table='MockElementLibrary',
key='0401318uuuuruepwdcznr',
columnParent='QueryPath(columnFamilyName='strings', superColumnName='null',
columnName='null')', columns=[id,]) from [email protected]:7000
WARN [MESSAGE-SERIALIZER-POOL:4] 2009-08-19 16:54:57,619
MessageSerializationTask.java (line 81) Exception was generated at : 08/19/2009
16:54:57 on thread MESSAGE-SERIALIZER-POOL:4
java.lang.NullPointerException
at org.apache.cassandra.net.TcpConnection.<init>(TcpConnection.java:83)
at
org.apache.cassandra.net.TcpConnectionManager.getConnection(TcpConnectionManager.java:64)
at
org.apache.cassandra.net.MessagingService.getConnection(MessagingService.java:306)
at
org.apache.cassandra.net.MessageSerializationTask.run(MessageSerializationTask.java:66)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
DEBUG [RESPONSE-STAGE:4] 2009-08-19 16:54:57,622 ResponseVerbHandler.java (line
38) Processing response on a callback from
[email protected]:7000
ERROR [pool-1-thread-22] 2009-08-19 16:55:02,619 Cassandra.java (line 608)
Internal error processing get
java.lang.RuntimeException: java.util.concurrent.TimeoutException: Operation
timed out - received only 1 responses from 192.168.133.129:7000 .
at
org.apache.cassandra.service.CassandraServer.readColumnFamily(CassandraServer.java:100)
at
org.apache.cassandra.service.CassandraServer.get(CassandraServer.java:226)
at
org.apache.cassandra.service.Cassandra$Processor$get.process(Cassandra.java:602)
at
org.apache.cassandra.service.Cassandra$Processor.process(Cassandra.java:560)
at
org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:252)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.util.concurrent.TimeoutException: Operation timed out -
received only 1 responses from 192.168.133.129:7000 .
at
org.apache.cassandra.service.QuorumResponseHandler.get(QuorumResponseHandler.java:86)
at
org.apache.cassandra.service.StorageProxy.strongRead(StorageProxy.java:435)
at
org.apache.cassandra.service.StorageProxy.readProtocol(StorageProxy.java:330)
at
org.apache.cassandra.service.CassandraServer.readColumnFamily(CassandraServer.java:92)
... 7 more
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.