我在从 Cassandra 中获取数据时遇到了一些麻烦。主要问题是这个异常:
ERROR 15:45:07,037 内部错误处理 get_range_slices java.lang.AssertionError: (162293240116362681726824838407749997815,35552186147124906726154103286687761342] 在 org.apache.cassandra.db.ColumnFamilyStore.getRangeSlice(ColumnFamilyStore.java:1251) 在 org.apache.cassandra.service.StorageProxy.getRangeSlice(StorageProxy.java:428) 在 org.apache.cassandra.thrift.CassandraServer.get_range_slices(CassandraServer.java:513) 在 org.apache.cassandra.thrift.Cassandra$Processor$get_range_slices.process(Cassandra.java:2868) 在 org.apache.cassandra.thrift.Cassandra$Processor.process(Cassandra.java:2555) 在 org.apache.cassandra.thrift.CustomTThreadPoolServer$WorkerProcess.run(CustomTThreadPoolServer.java:167) 在 java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 在 java.lang.Thread.run(Thread.java:619)
那我该怎么办?我describe_ring
用来获取网络的拓扑,然后我询问网络中的每个节点,describe_splits
这给了我应该用来获取范围的令牌,然后我开始询问它们,确保我设置了start_token
和end_token
键范围。
有任何想法吗?