首页 文章

Cassandra - 关于新ColumnFamily创建的NullPointerException

提问于
浏览
3

我遇到了这里描述的确切问题https://issues.apache.org/jira/browse/CASSANDRA-4363但是使用了Cassandra 1.1.2,cqlsh --cql3 .

当我尝试创建列族时,我得到的错误是

Traceback (most recent call last):
  File "./cqlsh", line 1008, in perform_statement
    self.cursor.execute(statement, decoder=decoder)
  File "./../lib/cql-internal-only-1.0.10.zip/cql-1.0.10/cql/cursor.py", line 117, in execute
    response = self.handle_cql_execution_errors(doquery, prepared_q, compress)
  File "./../lib/cql-internal-only-1.0.10.zip/cql-1.0.10/cql/cursor.py", line 132, in handle_cql_execution_errors
    return executor(*args, **kwargs)
  File "./../lib/cql-internal-only-1.0.10.zip/cql-1.0.10/cql/cassandra/Cassandra.py", line 1583, in execute_cql_query
    self.send_execute_cql_query(query, compression)
  File "./../lib/cql-internal-only-1.0.10.zip/cql-1.0.10/cql/cassandra/Cassandra.py", line 1593, in send_execute_cql_query
    self._oprot.trans.flush()
  File "./../lib/thrift-python-internal-only-0.7.0.zip/thrift/transport/TTransport.py", line 293, in flush
    self.__trans.write(buf)
  File "./../lib/thrift-python-internal-only-0.7.0.zip/thrift/transport/TSocket.py", line 117, in write
    plus = self.handle.send(buff)
error: [Errno 32] Broken pipe

有时我只是让TSocket读取0个字节 .

服务器端日志也与JIRA票证中提到的相同 .

ERROR [Thrift:12] 2012-09-05 12:06:10,999 CustomTThreadPoolServer.java (line 204) Error occurred during processing of message.
java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.NullPointerException
        at org.apache.cassandra.utils.FBUtilities.waitOnFuture(FBUtilities.java:373)
        at org.apache.cassandra.service.MigrationManager.announce(MigrationManager.java:188)
        at org.apache.cassandra.service.MigrationManager.announceNewColumnFamily(MigrationManager.java:139)
        at org.apache.cassandra.cql3.statements.CreateColumnFamilyStatement.announceMigration(CreateColumnFamilyStatement.java:83)
        at org.apache.cassandra.cql3.statements.SchemaAlteringStatement.execute(SchemaAlteringStatement.java:99)
        at org.apache.cassandra.cql3.QueryProcessor.processStatement(QueryProcessor.java:108)
        at org.apache.cassandra.cql3.QueryProcessor.process(QueryProcessor.java:121)
        at org.apache.cassandra.thrift.CassandraServer.execute_cql_query(CassandraServer.java:1237)
        at org.apache.cassandra.thrift.Cassandra$Processor$execute_cql_query.getResult(Cassandra.java:3542)
        at org.apache.cassandra.thrift.Cassandra$Processor$execute_cql_query.getResult(Cassandra.java:3530)
        at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:32)
        at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:34)
        at org.apache.cassandra.thrift.CustomTThreadPoolServer$WorkerProcess.run(CustomTThreadPoolServer.java:186)
        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:662)
Caused by: java.util.concurrent.ExecutionException: java.lang.NullPointerException
        at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:222)
        at java.util.concurrent.FutureTask.get(FutureTask.java:83)
        at org.apache.cassandra.utils.FBUtilities.waitOnFuture(FBUtilities.java:369)
        ... 15 more
Caused by: java.lang.NullPointerException
        at org.apache.cassandra.utils.ByteBufferUtil.string(ByteBufferUtil.java:167)

我尝试删除/ var / lib / cassandra目录并重新启动服务器 . 我仍然得到错误 . JIRA中的此错误已标记为“无法重现”,“固定版本无” . 那么我该如何让我的cassandra再次工作呢?

1 回答

相关问题