Не могу удалить клетки надгробий в Кассандре

Мы используем кластер с одним узлом кассандры для экспериментов, и одна из проблем, с которой мы сейчас сталкиваемся, - это надгробные клетки. Каждый ряд содержит 2 надгробных клетки, и мы застряли в попытке их удалить. Они вызывают прерывание наших запросов, поскольку порог надгробий достигается довольно быстро.

Это вывод трассировки при чтении одной строки:Read 1 live rows and 2 tombstone cells [ReadStage-2]

Я пытался использовать nodetool garbagecollectorс надлежащим -g опция (CELL или ROW), но никогда не менялась. Почему клетки томбостона не удаляются после выполнения этой команды? Я также попробовал flush команда...

Версии:

Cassandra version: 3.11.2 Thrift API version: 20.1.0 CQL supported versions: 3.4.4 (default: 3.4.4)

Ошибка заключается в следующем:

WARN [ReadStage-2] 2018-08-06 12:26:29,269 ReadCommand.java:555 - Read 50000 live rows and 100001 tombstone cells for query SELECT * FROM mykeyspace.mytable WHERE myid > 1025493673608400896 AND token(collectionid, ttype) >= token(10, collected) AND token(collectionid, ttype) <= token(10, collected) LIMIT 1000 (see tombstone_warn_threshold) ERROR [ReadStage-2] 2018-08-06 12:26:29,272 StorageProxy.java:1906 - Scanned over 100001 tombstones during query 'SELECT * FROM mykeyspace.mytable WHERE myid > 1025493673608400896 AND token(collectionid, ttype) >= token(10, collected) AND token(collectionid, ttype) <= token(10, collected) LIMIT 1000' (last scanned row partion key was ((10, collected), 1025494834679873536)); query aborted

Чего мне не хватает в C* сборщике мусора? Любая помощь в разъяснении этого поведения была бы отличной! Благодарю.

1 ответ

Надгробные камни были правильно собраны, но gc соблюдает значение gc_grace_seconds, установленное для семейства столбцов (по умолчанию 10 дней). После изменения таблицы с помощью следующей команды cqlsh:

alter table mykeyspace.mytable with gc_grace_seconds = 0;надгробия были сброшены полностью.

Просто чтобы быть уверенным, но, возможно, в этом не было необходимости, я снова запускаю nodetool garbagecollector и nodetool compact для этой таблицы.

Другие вопросы по тегам