通过CQL创建了若干表格,比如:
CREATE TABLE fileindex(
recid varchar,
agentno varchar,
customerno varchar,
recfile varchar,
createtime varchar,
PRIMARY KEY(recid)
);
CREATE INDEX ON fileindex(agentno);
CREATE INDEX ON fileindex(customerno);
CREATE INDEX ON fileindex(recfile);
CREATE INDEX ON fileindex(createtime);
然后再表中插入若干数据,运行了一段时间后,重启Cassandra,报了下面的错:
java.lang.ClassCastException: java.math.BigInteger cannot be cast to java.nio.ByteBuffer
at org.apache.cassandra.db.marshal.UTF8Type.compare(UTF8Type.java:27)
at org.apache.cassandra.dht.LocalToken.compareTo(LocalToken.java:45)
at org.apache.cassandra.db.DecoratedKey.compareTo(DecoratedKey.java:89)
at org.apache.cassandra.db.DecoratedKey.compareTo(DecoratedKey.java:38)
at java.util.TreeMap.getEntry(TreeMap.java:328)
at java.util.TreeMap.containsKey(TreeMap.java:209)
at java.util.TreeSet.contains(TreeSet.java:217)
at org.apache.cassandra.io.sstable.SSTableReader.load(SSTableReader.java:396)
at org.apache.cassandra.io.sstable.SSTableReader.open(SSTableReader.java:187)
at org.apache.cassandra.io.sstable.SSTableReader$1.run(SSTableReader.java:225)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
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)
java.lang.ClassCastException: java.math.BigInteger cannot be cast to java.nio.ByteBuffer
at org.apache.cassandra.db.marshal.UTF8Type.compare(UTF8Type.java:27)
at org.apache.cassandra.dht.LocalToken.compareTo(LocalToken.java:45)
at org.apache.cassandra.db.DecoratedKey.compareTo(DecoratedKey.java:89)
at org.apache.cassandra.db.DecoratedKey.compareTo(DecoratedKey.java:38)
找了半天,终于找到答案,原来是Cassandra1.1.1的一个bug(将在Cassandra1.1.2中修复)。
https://issues.apache.org/jira/browse/CASSANDRA-4331
解决方法就是删除saved_caches_directory文件夹中的文件,默认位置是/var/lib/cassandra/saved_caches
然后再重启就没问题了
分享到:
相关推荐
Title: Mastering Apache Cassandra, 2nd Edition Author: Nishant Neeraj Length: 322 pages Edition: 2 Language: English Publisher: Packt Publishing Publication Date: 2015-02-27 ISBN-10: 1784392618 ISBN-...
3. **修改配置文件**:编辑`conf/cassandra.yaml`,根据实际需求配置数据目录、端口、网络设置等。 4. **启动Cassandra**:运行`bin/cassandra`启动服务,使用`nodetool`工具进行集群管理和状态检查。 **四、使用...
根据提供的文件信息,本文档是关于Cassandra Java Driver 2.1的使用指南和参考手册。Cassandra是一个开源的NoSQL分布式数据库系统,而Java Driver是用于在Java应用与Cassandra数据库之间进行通信的客户端库。这份...
cassandra.part1.rar cassandra 3.0 for win
cassandra.part3.rar cassandra for Win
cassandra.part2.rar cassandra part2 for win
Cassandra-Operator是针对Apache Cassandra在Kubernetes集群中部署和管理的一个开源项目。它使得在Kubernetes环境中运行和扩展Cassandra数据库变得更加简单和自动化。在这个压缩包“cassandra-operator,apache-...
Cassandra(apache-cassandra-3.11.11-bin.tar.gz)是一套开源分布式NoSQL数据库系统。它最初由Facebook开发,用于储存收件箱等简单格式数据,集GoogleBigTable的数据模型与Amazon Dynamo的完全分布式的架构于一身...
1.CAP定理理与Cassandra 1.1 Cassandra优势 2.Cassandra ⼀一致性实现 2.1 CAS 2.2 Quorum读写 2.3 不不⼀一致产⽣生原因 2.4 Hinted handoff 2.5 Read repair 2.6 Manual repair 3.Cassandra应⽤用场景 ...
Apache Cassandra 是一个分布式数据库系统,特别设计用于处理大规模数据,具备高可用性、线性可扩展性和优秀的性能。在这个"apache-cassandra-3.11.13"版本中,我们探讨的是Cassandra项目的其中一个稳定版本,它包含...
Cassandra.dll是主要的驱动程序库,它包含了连接到Cassandra集群、执行查询、管理会话等所有核心功能的类和方法。开发者可以使用这个库来创建和管理Cassandra节点的连接池,发送和接收CQL命令,以及处理各种数据类型...
1. **修改配置文件**: 打开`conf\cassandra.yaml`文件,找到`data_file_directories`,设置为您的数据存储目录,如`C:\Program Files\Cassandra\data`。 2. **设置环境变量**: 创建系统环境变量`CASSANDRA_HOME`,值...
apache-cassandra-0.6.1-bin.tar.gzapache-cassandra-0.6.1-bin.tar.gzapache-cassandra-0.6.1-bin.tar.gzapache-cassandra-0.6.1-bin.tar.gzapache-cassandra-0.6.1-bin.tar.gzapache-cassandra-0.6.1-bin.tar.gz
【标题】"Cassandra Java Client.zip" 涉及到的主要知识点是Apache Cassandra数据库与Java客户端的交互。Cassandra是一款分布式NoSQL数据库系统,设计用于处理大规模数据分发在全球的数据中心,提供高可用性、线性可...
标题 "2-1+Cassandra时空应用场景.pdf" 暗示我们即将探讨的是Apache Cassandra在处理时空数据方面的应用。Cassandra是一款分布式NoSQL数据库系统,特别适合处理大规模、高可用性的实时数据存储。在这个场景中,它被...
CASSANDRA是一种新的访问数据的架构--中文版