2017-02-02 15 views
0

Я подозреваю, что повредил свои sstables для таблицы, поэтому я запускаю утилиту sstableverify, пока узел не работает. Я получаю сообщения, такие как [GC overhead limit exceeded]cassandra 2.2.8: sstableverify - превышен верхний предел GC

Ищет помощь, если эта проблема может быть обработана или адресована .. спасибо заранее!

sstableverify -v enterprise ale_state_access_point

Exception in thread "main" java.lang.OutOfMemoryError: GC overhead limit exceeded at java.util.Arrays.copyOf(Arrays.java:3332) at java.lang.AbstractStringBuilder.ensureCapacityInternal(AbstractStringBuilder.java:124) at java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:649) at java.lang.StringBuilder.append(StringBuilder.java:202) at org.apache.cassandra.io.sstable.Descriptor.filenameFor(Descriptor.java:170) at org.apache.cassandra.io.sstable.Descriptor.filenameFor(Descriptor.java:125) at org.apache.cassandra.io.sstable.format.SSTableReader.load(SSTableReader.java:709) at org.apache.cassandra.io.sstable.format.SSTableReader.load(SSTableReader.java:672) at org.apache.cassandra.io.sstable.format.SSTableReader.open(SSTableReader.java:466) at org.apache.cassandra.io.sstable.format.SSTableReader.openNoValidation(SSTableReader.java:377) at org.apache.cassandra.tools.StandaloneVerifier.main(StandaloneVerifier.java:89) ERROR 20:33:15 LEAK DETECTED: a reference ([email protected]) to class org.[email protected]1047072254:/cassandra/data/enterprise/ale_state_access_point-ae4c50d0d67a11e696b25735df805631/lb-79600-big was not released before the reference was garbage collected ERROR 20:33:15 LEAK DETECTED: a reference ([email protected]) to class org.[email protected]1968390106:/cassandra/data/enterprise/ale_state_access_point-ae4c50d0d67a11e696b25735df805631/lb-58267-big was not released before the reference was garbage collected

ответ

0

Существует только так много, что вы можете сделать, если подделали sstables и сломали их. Это также произойдет, когда узел попытается загрузить таблицу. Я бы предложил восстановить из резервной копии или очистить таблицу.

+0

Привет Марко .. спасибо еще раз для вас ответ. Я действительно пытаюсь очистить таблицу, хотя обе утилиты sstablescrub & sstableverify вызывают сообщение OOM. nodetool scrub просто зависает и никогда не завершается. Поэтому я ищу причины, по которым эти утилиты идут oom, и если мы сможем обойти проблемы. – Asad

1

Я бы предположил, что у вас есть много sstables, учитывая его отказ от создания дескрипторов. Если у вас есть память о системе, попробуйте увеличить кучи (по умолчанию 256mb):

MAX_HEAP_SIZE=4G sstableverify -v enterprise ale_state_access_point

+0

Спасибо @Chris Lohfink, вы правы на .. было много sstables, так что я сделал это, чтобы пинать уплотнение с изменением стратегии уплотнения нескольких CFs .., которые рассматривали проблему. – Asad