2016-02-11 47 views
0

到目前爲止,一切都很好。我們在一臺機器上有一個BSOD,現在已經損壞了SSTables。我們正在嘗試找到正確的過程來使此節點聯機。我只是喜歡殺死數據並修復節點,因爲我們有複製2,但由於每個節點上的數據量太大,我無法做到這一點。卡桑德拉最近藍屏導致腐敗SSTables

附加是錯誤。

我試圖運行nodetool擦洗,但由於DSE無法啓動,我得到正常無法連接到127.0.0.1錯誤。

我應該編輯配置並從策略停止更改爲盡力而爲,然後啓動/運行命令?

感謝,


ERROR 20時58分34秒強行退出,由於在啓動時的文件系統異常,硬盤故障政策 「停止」 org.apache.cassandra.io.sstable.CorruptSSTableException:JAVA。 io.EOFException at org.apache.cassandra.io.compress.CompressionMetadata。(CompressionMetadata.java:131)〜[cassandra-all-2.1.11.908.jar:2.1.11.908] at org.apache.cassandra.io。 compress.CompressionMetadata.create(CompressionMetadata.java:85)〜[cassandra-all-2.1.11.908.jar:2.1.11.908] at org.apache.cassandra.io.util.CompressedSegmentedFile $ Builder.metadata(Compres sedSegmentedFile.java:79)〜[cassandra-all-2.1.11.908.jar:2.1.11.908] at org.apache.cassandra.io.util.CompressedPoolingSegmentedFile $ Builder.complete(CompressedPoolingSegmentedFile.java:72)〜[cassandra- all-2.1.11.908.jar:2.1.11.908] at org.apache.cassandra.io.util.SegmentedFile $ Builder.complete(SegmentedFile.java:169)〜[cassandra-all-2.1.11.908.jar:2.1。 11.908] at org.apache.cassandra.io.sstable.SSTableReader.load(SSTableReader.java:741)〜[cassandra-all-2.1.11.908.jar:2.1.11.908] at org.apache.cassandra.io。 sstable.SSTableReader.load(SSTableReader.java:692)〜[cassandra-all-2.1.11.908.jar:2.1.11.908] at org.apache.cassandra.io.sstable.SSTableReader.open(SSTableReader.java:480) 〜[cassandra-all-2.1.11.908.jar:2.1.11.908] at org.apache.cassandra.io.sstable.SSTableReader.open(SSTableReader.java:376) 〜[cassandra-all-2.1.11.908.jar:2.1.11.908] at org.apache.cassandra.io.sstable.SSTableReader $ 4.run(SSTableReader.java:523)〜[cassandra-all-2.1.11.908.jar :2.1.11.908] at java.util.concurrent.Executors $ RunnableAdapter.call(Executors.java:511)[na:1.8.0_66] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [Na:1.8.0_66] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[na:1.8.0_66] at java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java: 617)[na:1.8.0_66] at java.lang.Thread.run(Thread.java:745)[na:1.8.0_66] 引起來自:java.io.EOFException:null at java.io.DataInputStream .readUnsignedShort(DataInputStream.java:340)〜[na:1.8.0_66] at java.io.DataInputStream.readUTF(DataInputStream.java:589)〜[na:1.8.0_66] at java.io.DataInputStream.readUTF(DataInputStream.java:564)〜[na:1.8.0_66] at org。 apache.cassandra.io.compress.CompressionMetadata。(CompressionMetadata.java:106)〜[cassandra-all-2.1.11.908.jar:2.1.11.908] ... 14個常見幀被遺漏 錯誤20:58:34強行退出由於啓動時文件系統異常,磁盤故障策略「停止」 org.apache.cassandra.io.sstable.CorruptSSTableException:java.io.EOFException at org.apache.cassandra.io.compress.CompressionMetadata。(CompressionMetadata.java :131)〜[cassandra-all-2.1.11.908.jar:2.1.11.908] at org.apache.cassandra.io.compress.CompressionMetadata.create(CompressionMetadata.java:85)〜[cassandra-all-2.1.11.908的.jar:2.1。11.908] at org.apache.cassandra.io.util.CompressedSegmentedFile $ Builder.metadata(CompressedSegmentedFile.java:79)〜[cassandra-all-2.1.11.908.jar:2.1.11.908] at org.apache.cassandra。 io.util.CompressedPoolingSegmentedFile $ Builder.complete(CompressedPoolingSegmentedFile.java:72)〜[卡桑德拉-全2.1.11.908.jar:2.1.11.908] 在org.apache.cassandra.io.util.SegmentedFile $ Builder.complete( SegmentedFile.java:169)〜[cassandra-all-2.1.11.908.jar:2.1.11.908] at org.apache.cassandra.io.sstable.SSTableReader.load(SSTableReader.java:741)〜[cassandra-all- 2.1.11.908.jar:2.1.11.908] 在org.apache.cassandra.io.sstable.SSTableReader.load(SSTableReader.java:692)〜[卡桑德拉-全2.1.11.908.jar:2.1.11.908] 在org.apache.cassandra.io.sstable.SSTableReader.open(SSTableReader.java:480)〜[cassandra-all-2.1.11.908.jar:2 .1.11.908] 在org.apache.cassandra.io.sstable.SSTableReader.open(SSTableReader.java:376)〜[卡桑德拉-全2.1.11.908.jar:2.1.11.908] 在org.apache.cassandra .io.sstable.SSTableReader $ 4.run(SSTableReader.java:523)〜[cassandra-all-2.1.11.908.jar:2.1.11.908] at java.util.concurrent.Executors $ RunnableAdapter.call(Executors.java: 511)[NA:1.8.0_66] 在java.util.concurrent.FutureTask.run(FutureTask.java:266)[NA:1.8.0_66] 在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java: 1142)[NA:1.8.0_66] 在java.util.concurrent.ThreadPoolExecutor中$ Worker.run(ThreadPoolExecutor.java:617)[NA:1.8.0_66] 在java.lang.Thread.run(Thread.java: 745)[na:1.8.0_66] 引起:java.io.EOFException:null 在java.io.DataInputStream.readUnsignedShort(DataInputStream.java:340)〜[na:1.8.0_66] at java.io.DataInputStream.readUTF(DataInputStream.java:589)〜[na:1.8.0_66] at java .io.DataInputStream.readUTF(DataInputStream.java:564)〜[na:1.8.0_66] at org.apache.cassandra.io.compress.CompressionMetadata。(CompressionMetadata.java:106)〜[cassandra-all-2.1。 11.908.jar:2.1.11.908] ...... 14個共同框架省略 INFO 20時58分34秒DSE關停...... INFO 20時58分34秒所有的插件都停止。

+0

你試過離線擦洗工具? https://docs.datastax.com/en/cassandra/2.1/cassandra/tools/toolsSSTableScrub_t.html –

+0

是的,我開始它,但後來因爲#1規則而迅速停止。先嚐試擦洗。我應該試試這個嗎? –

+0

或只是刪除損壞的sstable並執行修復 –

回答

0

您是否檢查某些磁盤故障是否導致SSTables損壞?這是穩定腐敗的主要原因之一。如果是這種情況修復磁盤,然後運行nodetool修復。

+0

我不認爲這個問題與驅動器故障有關,因爲我可以讀取驅動器上的所有數據。我認爲它正處於寫作過程中,由於RAID卡出現故障而發生BSOD,從而導致損壞。我目前正在運行sscrub,過去4天仍在等待它完成。 –

+0

nodetool擦洗的結果是什麼,它有用嗎? – rsangar1

0

在失敗的節點上修改cassandra.yaml中的cassandra策略。

1)磁盤故障政策BEST_EFFORT 2)啓動DSE啓動或(卡桑德拉服務) 3)nodetool擦洗