On Mon, Feb 8, 2010 at 12:38 PM, Jonathan Ellis <jbel...@gmail.com> wrote: > On Mon, Feb 8, 2010 at 2:25 PM, Jack Culpepper <jackculpep...@gmail.com> > wrote: >> Are you running on a platform that doesn't care about capitalization? > > Yes. If you're building Thrift on windows you're only the second > person I know to have done so. :) >
Your platform *cares* about capitalization, right? Maybe I'm missing something, but how can you "from Constants import VERSION"? The file containing VERSION is called "constants.py" in the tree. >> error: [Errno 104] Connection reset by peer > > I've never seen Thrift do that before. Did you check the server log > for exceptions? No exceptions. I actually get a different error when I run the tests now. $ nosetests .E.EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE ====================================================================== ERROR: system.test_server.TestMutations.test_batch_insert ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/local/python/lib/python2.6/site-packages/nose-0.11.1-py2.6.egg/nose/case.py", l ine 183, in runTest self.test(*self.arg) File "/k/jack/cassandra/test/system/test_server.py", line 299, in test_batch_insert _verify_batch() File "/k/jack/cassandra/test/system/test_server.py", line 93, in _verify_batch _verify_simple() File "/k/jack/cassandra/test/system/test_server.py", line 99, in _verify_simple assert client.get('Keyspace1', 'key1', ColumnPath('Standard1', column='c1'), Consistency Level.ONE).column == Column('c1', 'value1', 0) File "/k/jack/cassandra/interface/thrift/gen-py/cassandra/Cassandra.py", line 277, in get return self.recv_get() File "/k/jack/cassandra/interface/thrift/gen-py/cassandra/Cassandra.py", line 305, in recv _get raise result.nfe NotFoundException: NotFoundException() ====================================================================== ERROR: system.test_server.TestMutations.test_batch_insert_super ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/local/python/lib/python2.6/site-packages/nose-0.11.1-py2.6.egg/nose/case.py", l ine 183, in runTest self.test(*self.arg) File "/k/jack/cassandra/test/system/test_server.py", line 540, in test_batch_insert_super client.batch_insert('Keyspace1', 'key1', cfmap, ConsistencyLevel.ZERO) File "/k/jack/cassandra/interface/thrift/gen-py/cassandra/Cassandra.py", line 607, in batc h_insert self.recv_batch_insert() File "/k/jack/cassandra/interface/thrift/gen-py/cassandra/Cassandra.py", line 621, in recv _batch_insert (fname, mtype, rseqid) = self._iprot.readMessageBegin() File "build/bdist.linux-i686/egg/thrift/protocol/TBinaryProtocol.py", line 126, in readMes sageBegin sz = self.readI32() File "build/bdist.linux-i686/egg/thrift/protocol/TBinaryProtocol.py", line 203, in readI32 buff = self.trans.readAll(4) File "build/bdist.linux-i686/egg/thrift/transport/TTransport.py", line 58, in readAll chunk = self.read(sz-have) File "build/bdist.linux-i686/egg/thrift/transport/TTransport.py", line 155, in read self.__rbuf = StringIO(self.__trans.read(max(sz, self.DEFAULT_BUFFER))) File "build/bdist.linux-i686/egg/thrift/transport/TSocket.py", line 92, in read buff = self.handle.recv(sz) error: [Errno 104] Connection reset by peer ..and here is the last sequence from the log: DEBUG [main] 2010-02-08 20:48:24,636 CassandraDaemon.java (line 109) Binding thrift service to /127.0.0.1:9170 INFO [main] 2010-02-08 20:48:24,636 CassandraDaemon.java (line 149) Cassandra starting up. .. DEBUG [pool-1-thread-1] 2010-02-08 20:48:24,766 CassandraServer.java (line 365) batch_inser t DEBUG [pool-1-thread-1] 2010-02-08 20:48:24,766 StorageProxy.java (line 274) insert writing local key key1 DEBUG [pool-1-thread-1] 2010-02-08 20:48:24,819 CassandraServer.java (line 267) get DEBUG [ROW-READ-STAGE:1] 2010-02-08 20:48:24,819 StorageProxy.java (line 672) weakreadlocal reading SliceByNamesReadCommand(table='Keyspace1', key='key1', columnParent='QueryPath(col umnFamilyName='Standard1', superColumnName='null', columnName='null')', columns=[6331,]) DEBUG [ROW-READ-STAGE:1] 2010-02-08 20:48:24,819 SliceQueryFilter.java (line 116) collectin g 6331:false:6...@0 DEBUG [ROW-READ-STAGE:1] 2010-02-08 20:48:24,819 SliceQueryFilter.java (line 116) collectin g 6332:false:6...@0 DEBUG [pool-1-thread-1] 2010-02-08 20:48:24,876 CassandraServer.java (line 217) get_slice DEBUG [ROW-READ-STAGE:2] 2010-02-08 20:48:24,876 StorageProxy.java (line 672) weakreadlocal reading SliceFromReadCommand(table='Keyspace1', key='key1', column_parent='QueryPath(colum nFamilyName='Standard1', superColumnName='null', columnName='null')', start='', finish='', reversed=false, count=1000) DEBUG [ROW-READ-STAGE:2] 2010-02-08 20:48:24,876 SliceQueryFilter.java (line 116) collectin g 6331:false:6...@0 DEBUG [ROW-READ-STAGE:2] 2010-02-08 20:48:24,876 SliceQueryFilter.java (line 116) collectin g 6332:false:6...@0 DEBUG [pool-1-thread-1] 2010-02-08 20:48:24,876 CassandraServer.java (line 217) get_slice DEBUG [ROW-READ-STAGE:3] 2010-02-08 20:48:24,876 StorageProxy.java (line 672) weakreadlocal reading SliceFromReadCommand(table='Keyspace1', key='key1', column_parent='QueryPath(colum nFamilyName='Standard2', superColumnName='null', columnName='null')', start='', finish='', reversed=false, count=1000) DEBUG [ROW-READ-STAGE:3] 2010-02-08 20:48:24,876 SliceQueryFilter.java (line 116) collectin g 6331:false:6...@0 DEBUG [ROW-READ-STAGE:3] 2010-02-08 20:48:24,876 SliceQueryFilter.java (line 116) collectin g 6332:false:6...@0 When I run again I get the first one again: $ nosetests .E.EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE ====================================================================== ERROR: system.test_server.TestMutations.test_batch_insert ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/local/python/lib/python2.6/site-packages/nose-0.11.1-py2.6.egg/nose/case.py", l ine 183, in runTest self.test(*self.arg) File "/k/jack/cassandra/test/system/test_server.py", line 299, in test_batch_insert _verify_batch() File "/k/jack/cassandra/test/system/test_server.py", line 93, in _verify_batch _verify_simple() File "/k/jack/cassandra/test/system/test_server.py", line 99, in _verify_simple assert client.get('Keyspace1', 'key1', ColumnPath('Standard1', column='c1'), Consistency Level.ONE).column == Column('c1', 'value1', 0) File "/k/jack/cassandra/interface/thrift/gen-py/cassandra/Cassandra.py", line 277, in get return self.recv_get() File "/k/jack/cassandra/interface/thrift/gen-py/cassandra/Cassandra.py", line 305, in recv _get raise result.nfe NotFoundException: NotFoundException() ====================================================================== ERROR: system.test_server.TestMutations.test_batch_insert_super ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/local/python/lib/python2.6/site-packages/nose-0.11.1-py2.6.egg/nose/case.py", l ine 183, in runTest self.test(*self.arg) File "/k/jack/cassandra/test/system/test_server.py", line 540, in test_batch_insert_super client.batch_insert('Keyspace1', 'key1', cfmap, ConsistencyLevel.ZERO) File "/k/jack/cassandra/interface/thrift/gen-py/cassandra/Cassandra.py", line 607, in batc h_insert self.recv_batch_insert() File "/k/jack/cassandra/interface/thrift/gen-py/cassandra/Cassandra.py", line 621, in recv _batch_insert (fname, mtype, rseqid) = self._iprot.readMessageBegin() File "build/bdist.linux-i686/egg/thrift/protocol/TBinaryProtocol.py", line 126, in readMes sageBegin sz = self.readI32() File "build/bdist.linux-i686/egg/thrift/protocol/TBinaryProtocol.py", line 203, in readI32 buff = self.trans.readAll(4) File "build/bdist.linux-i686/egg/thrift/transport/TTransport.py", line 58, in readAll chunk = self.read(sz-have) File "build/bdist.linux-i686/egg/thrift/transport/TTransport.py", line 155, in read self.__rbuf = StringIO(self.__trans.read(max(sz, self.DEFAULT_BUFFER))) File "build/bdist.linux-i686/egg/thrift/transport/TSocket.py", line 92, in read buff = self.handle.recv(sz) error: [Errno 104] Connection reset by peer The relevant part of the log: INFO [main] 2010-02-08 20:54:55,957 CassandraDaemon.java (line 149) Cassandra starting up. .. DEBUG [pool-1-thread-1] 2010-02-08 20:54:56,031 CassandraServer.java (line 365) batch_inser t DEBUG [pool-1-thread-1] 2010-02-08 20:54:56,031 StorageProxy.java (line 123) insert writing local key key1 DEBUG [pool-1-thread-1] 2010-02-08 20:54:56,197 CassandraServer.java (line 267) get DEBUG [ROW-READ-STAGE:1] 2010-02-08 20:54:56,197 StorageProxy.java (line 672) weakreadlocal reading SliceByNamesReadCommand(table='Keyspace1', key='key1', columnParent='QueryPath(col umnFamilyName='Super1', superColumnName='[...@195ff24', columnName='null')', columns=[4,]) DEBUG [ROW-READ-STAGE:1] 2010-02-08 20:54:56,197 SliceQueryFilter.java (line 116) collectin g SuperColumn(736331 [4:false:6...@0,]) DEBUG [ROW-READ-STAGE:1] 2010-02-08 20:54:56,197 SliceQueryFilter.java (line 116) collectin g SuperColumn(736332 [5:false:6...@0,6:false:6...@0,]) DEBUG [pool-1-thread-1] 2010-02-08 20:54:56,270 CassandraServer.java (line 217) get_slice DEBUG [ROW-READ-STAGE:2] 2010-02-08 20:54:56,270 StorageProxy.java (line 672) weakreadlocal reading SliceFromReadCommand(table='Keyspace1', key='key1', column_parent='QueryPath(colum nFamilyName='Super1', superColumnName='null', columnName='null')', start='', finish='', rev ersed=false, count=1000) DEBUG [ROW-READ-STAGE:2] 2010-02-08 20:54:56,270 SliceQueryFilter.java (line 116) collectin g SuperColumn(736331 [4:false:6...@0,]) DEBUG [ROW-READ-STAGE:2] 2010-02-08 20:54:56,270 SliceQueryFilter.java (line 116) collectin g SuperColumn(736332 [5:false:6...@0,6:false:6...@0,]) DEBUG [pool-1-thread-1] 2010-02-08 20:54:56,270 CassandraServer.java (line 267) get DEBUG [ROW-READ-STAGE:3] 2010-02-08 20:54:56,270 StorageProxy.java (line 672) weakreadlocal reading SliceByNamesReadCommand(table='Keyspace1', key='key1', columnParent='QueryPath(col umnFamilyName='Super2', superColumnName='[...@1f9f0f2', columnName='null')', columns=[4,]) DEBUG [pool-1-thread-1] 2010-02-08 20:54:56,270 CassandraServer.java (line 217) get_slice DEBUG [ROW-READ-STAGE:4] 2010-02-08 20:54:56,270 StorageProxy.java (line 672) weakreadlocal reading SliceFromReadCommand(table='Keyspace1', key='key1', column_parent='QueryPath(colum nFamilyName='Super1', superColumnName='null', columnName='null')', start='', finish='', rev ersed=false, count=1000) DEBUG [ROW-READ-STAGE:4] 2010-02-08 20:54:56,270 SliceQueryFilter.java (line 116) collectin g SuperColumn(736331 [4:false:6...@0,]) DEBUG [ROW-READ-STAGE:4] 2010-02-08 20:54:56,270 SliceQueryFilter.java (line 116) collectin g SuperColumn(736332 [5:false:6...@0,6:false:6...@0,]) I'd like to contribute something and I'm happy to put it in contrib. I'm running on a couple of 32-bit debian machines in EC2. There should be nothing unusual about my setup. Jack >> What if I create a separate set of tests to make sure a running >> cluster is behaving properly? The first test would make sure the >> proper key spaces exist. That could fail with a clear message. >> Subsequently, scan the keys, remove all of them, then scan again. Now, >> either the environment is clean or something failed. Next, do some >> insertions, deletions, scans, etc. This would help me verify that my >> cluster is set up properly. > > Sounds more like an in-house testing tool to me but we could evaluate > putting something like that in contrib/. > > -Jonathan >