1

我创建了一个 cassandra 的多节点集群:node0 和 node1(cassandra 版本 1.1.1),然后我使用 cassandra-cli 连接到 node0 并创建了一个列族。node0 的信息没问题,但它在 node1 处抛出异常,如下所示:

    错误 18:22:48,486 线程 Thread[MigrationStage:1,5,main] 中的异常
    org.apache.cassandra.db.marshal.MarshalException:无效的 UTF8 字节 4fd5c745
        在 org.apache.cassandra.db.marshal.UTF8Type.getString(UTF8Type.java:56)
        在 org.apache.cassandra.cql3.ColumnIdentifier.(ColumnIdentifier.java:47)
        在 org.apache.cassandra.cql3.CFDefinition.getKeyId(CFDefinition.java:125)
        在 org.apache.cassandra.cql3.CFDefinition.(CFDefinition.java:59)
        在 org.apache.cassandra.config.CFMetaData.updateCfDef(CFMetaData.java:1303)
        在 org.apache.cassandra.config.CFMetaData.keyAlias(CFMetaData.java:224)
        在 org.apache.cassandra.config.CFMetaData.fromSchemaNoColumns(CFMetaData.java:1187)
        在 org.apache.cassandra.config.CFMetaData.fromSchema(CFMetaData.java:1215)
        在 org.apache.cassandra.config.KSMetaData.deserializeColumnFamilies(KSMetaData.java:291)
        在 org.apache.cassandra.db.DefsTable.mergeColumnFamilies(DefsTable.java:396)
        在 org.apache.cassandra.db.DefsTable.mergeSchema(DefsTable.java:271)
        在 org.apache.cassandra.db.DefsTable.mergeRemoteSchema(DefsTable.java:249)
        在 org.apache.cassandra.db.DefinitionsUpdateVerbHandler$1.runMayThrow(DefinitionsUpdateVerbHandler.java:48)
        在 org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30)
        在 java.util.concurrent.Executors$RunnableAdapter.call(未知来源)
        在 java.util.concurrent.FutureTask$Sync.innerRun(未知来源)
        在 java.util.concurrent.FutureTask.run(未知来源)
        在 java.util.concurrent.ThreadPoolExecutor.runWorker(未知来源)
        在 java.util.concurrent.ThreadPoolExecutor$Worker.run(未知来源)
        在 java.lang.Thread.run(未知来源)

然后我将数据存储到 node0 的列族中,我可以在 node0 处获取数据,并且 node1 说找不到列族。重启node1后,我可以像node0一样在node1获取数据。

我该如何解决这个问题?

4

1 回答 1

0

这是即将发布的 1.1.2 版本中修复的错误:https ://issues.apache.org/jira/browse/CASSANDRA-4307 。如果要测试修复,可以trunk从 Apache 的 git 存储库中提取分支。

于 2012-06-20T20:34:58.507 回答