【问题标题】:Why is Cassandra ignoring my schema modifications?为什么 Cassandra 忽略我的架构修改?
【发布时间】:2012-07-25 21:24:51
【问题描述】:

我对 Cassandra 还是很陌生。我有一个单节点集群运行了几天,没有任何问题,但今天它开始忽略我的一些 CQL 命令。 SELECTs 工作正常,但如果我从 cqlsh 运行 DROP TABLE foo; 则什么也不会发生。暂停半秒后,它让我回到提示符,但桌子没有被丢弃。使用CREATE INDEX 创建索引也是如此。

我在虚拟机中运行,在 Ubuntu 12.04 上使用 OpenStax 的 Cassandra 发行版。

我检查了 Cassandra 日志,当我运行 CREATE INDEX 时肯定会得到输出,但没有明显的错误:

 CREATE INDEX number_uri_index ON numbers (number);

生产:

 INFO [MigrationStage:1] 2012-07-25 14:25:59,120 ColumnFamilyStore.java (line 643) Enqueuing flush of Memtable-schema_columnfamilies@15955724(1212/1515 serialized/live bytes, 20 ops)
 INFO [FlushWriter:5] 2012-07-25 14:25:59,122 Memtable.java (line 266) Writing Memtable-schema_columnfamilies@15955724(1212/1515 serialized/live bytes, 20 ops)
 INFO [FlushWriter:5] 2012-07-25 14:25:59,139 Memtable.java (line 307) Completed flushing /var/lib/cassandra/data/system/schema_columnfamilies/system-schema_columnfamilies-hd-50-Data.db (1267 bytes) for commitlog position ReplayPosition(segmentId=140485087964, position=8551)
 INFO [MigrationStage:1] 2012-07-25 14:25:59,141 ColumnFamilyStore.java (line 643) Enqueuing flush of Memtable-schema_columns@7576227(320/400 serialized/live bytes, 5 ops)
 INFO [FlushWriter:5] 2012-07-25 14:25:59,141 Memtable.java (line 266) Writing Memtable-schema_columns@7576227(320/400 serialized/live bytes, 5 ops)
 INFO [FlushWriter:5] 2012-07-25 14:25:59,172 Memtable.java (line 307) Completed flushing /var/lib/cassandra/data/system/schema_columns/system-schema_columns-hd-46-Data.db (367 bytes) for commitlog position ReplayPosition(segmentId=140485087964, position=8551)

【问题讨论】:

  • 您可以尝试使用 cassandra-cli 并删除相同的列族,看看会发生什么?
  • 抱歉,我现在已经删除了整个数据目录并重新开始。我确实尝试通过 python 绑定使用 CQL 2 和 3 以及 CQL。都以同样的方式失败。
  • 我的一个同事也遇到了同样的问题,但对她来说,如果她在版本 2 而不是 3 上使用 cqlsh 就可以了。如果再次发生,我们将尝试 cassandra-cli
  • 好的,她再次遇到问题并尝试了 cassandra-cli,她可以删除列族和键空间。
  • @Fasaxc 这个问题听起来像是区分大小写的问题。 CQL 2 是保留大小写的,但 CQL 3 默认情况下会小写所有内容(因此,如果您有一个预先存在的 CF 或 KS 名称中包含大写字母,则必须在 CQL 3 中将该名称双引号)。

标签: cassandra cql


【解决方案1】:

在 3 节点设置中也存在同样的问题。解决了在第二个节点上进行相同的修改。 调查 CASSANDRA jira 我们发现它可能与模式相关命令管理时间戳的方式有关,它应该在 1.1.3 中修复:

CASSANDRA-4461 CASSANDRA-4432

【讨论】:

  • 这似乎完全符合我的症状。
  • 我们遇到了同样的问题,我可以确认 cassanda 1.1.3 修复了它们
猜你喜欢
  • 1970-01-01
  • 2021-03-12
  • 2010-11-22
  • 2020-11-07
  • 1970-01-01
  • 2013-09-30
  • 2017-04-16
  • 2016-06-20
  • 1970-01-01
相关资源
最近更新 更多