Ich habe einen Ein-Knoten-Cassandra-Cluster, der sich derzeit in einem größeren Verdichtungsprozess befindet. Nach dem Ausführen eines nodetool compact
startete es die Komprimierung und ich sehe die tmp-sstable-Dateien mit einer Größe von 0 Bytes. Aber das ist alles. Stundenlang kein Fortschritt.
Ich habe den Cassandra-Dienst bereits beendet, aber nach einem Neustart wurde die Komprimierung ohne Fortschritt fortgesetzt. A nodetool compactionstats
zeigt 0,00% Fortschritt und eine verbleibende Zeit von sechs Minuten. Aber ich habe schon 24 Stunden gewartet. In der Zwischenzeit habe ich alle Leser und Schreiber angehalten, ohne einen Unterschied zu sehen.
Die Version, die ich benutze, ist 2.1.2. Ich habe es bereits mit OpenJDK 7 und mit Oracle Java 7 versucht, aber kein Unterschied.
In den Protokollen wird kein Hinweis auf OOM oder andere Ausnahmen oder Warnungen angezeigt.
Ich bin mir nicht sicher, ob es hilfreich ist, aber ich wandere derzeit von Cassandra ab, da es nicht meinen Bedürfnissen entspricht. Also lösche ich viele Daten, die migriert wurden. Es gibt viele Zeilen mit mehreren hundert bis zu einigen tausend Spalten. Aber es gibt eine Handvoll Zeilen mit einer Million Spalten. Aufgrund des Migrationsprozesses (Löschvorgangs) sind jetzt viele Grabsteine in ihnen.
Jede Hilfe beim Debuggen des Problems ist willkommen.
ulimit -a
von einer Cassandra-Benutzerkonsole kann nützlich sein.