10

私はSonarqube 5.1に取り組んでいます。以前は問題なく動作していましたが、後でデバイスにスペースが残っていないというエラーが発生しました。不要なファイルをいくつか削除して、サービスを再起動しました。サービスのステータスが実行中であることがわかりますが、Web ページにアクセスできません (ソナー Web サービスが開始されていないため) ログを確認したところ、以下のエラーが見つかりました。

2015.08.03 10:58:56 INFO   es[o.elasticsearch.node]  [sonar-1438592314778] started
2015.08.03 10:59:03 INFO   es[o.e.gateway]  [sonar-1438592314778] recovered [6] indices into cluster_state
2015.08.03 11:00:44 WARN   es[o.e.indices.cluster]  [sonar-1438592314778] [sourcelines][0] failed to start shard
org.elasticsearch.index.gateway.IndexShardGatewayRecoveryException: [sourcelines][0] failed to recover shard
at     org.elasticsearch.index.gateway.local.LocalIndexShardGateway.recover(LocalIndexShardGateway.java:287) ~[elasticsearch-1.4.4.jar:na]
at  org.elasticsearch.index.gateway.IndexShardGatewayService$1.run(IndexShardGatewayService.java:132) ~[elasticsearch-1.4.4.jar:na]
at  java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:114 2) [na:1.8.0_40]
at  java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_40]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_40]
Caused by: org.elasticsearch.index.translog.TranslogCorruptedException: translog corruption while reading from stream
at  org.elasticsearch.index.translog.ChecksummedTranslogStream.read(ChecksummedTranslogStream.java:70) ~[elasticsearch-1.4.4.jar:na]
at  org.elasticsearch.index.gateway.local.LocalIndexShardGateway.recover(LocalIndexShardGateway.java:257) ~[elasticsearch-1.4.4.jar:na]
... 4 common frames omitted
Caused by: org.elasticsearch.ElasticsearchException: failed to read [sourceline][22c2d1d1-8e73-47c0-b9fa-f8f5cc96b93f_796]
at org.elasticsearch.index.translog.Translog$Index.readFrom(Translog.java:520) ~[elasticsearch-1.4.4.jar:na]
at  org.elasticsearch.index.translog.ChecksummedTranslogStream.read(ChecksummedTranslogStream.java:68) ~[elasticsearch-1.4.4.jar:na]
... 5 common frames omitted
Caused by: org.elasticsearch.ElasticsearchIllegalArgumentException: No version type match [105]
at org.elasticsearch.index.VersionType.fromValue(VersionType.java:307) ~[elasticsearch-1.4.4.jar:na]
at org.elasticsearch.index.translog.Translog$Index.readFrom(Translog.java:517) ~[elasticsearch-1.4.4.jar:na]
... 6 common frames omitted
2015.08.03 11:00:44 WARN   es[o.e.c.action.shard]  [sonar-1438592314778] [sourcelines][0] sending failed shard for [sourcelines][0], node[5eRgYcVUTNCNLjhhzdiHGA], [P], s[INITIALIZING], indexUUID [JaH5lnRnRVOFD95Nw28W5Q], reason [Failed to start shard, message [IndexShardGatewayRecoveryException[[sourcelines][0] failed to recover shard]; nested: TranslogCorruptedException[translog corruption while reading from stream]; nested: ElasticsearchException[failed to read [sourceline][22c2d1d1-8e73-47c0-b9fa-f8f5cc96b93f_796]]; nested: ElasticsearchIllegalArgumentException[No version type match [105]]; ]]
2015.08.03 11:00:44 WARN   es[o.e.c.action.shard]  [sonar-1438592314778] [sourcelines][0] received shard failed for [sourcelines][0], node[5eRgYcVUTNCNLjhhzdiHGA], [P], s[INITIALIZING], indexUUID [JaH5lnRnRVOFD95Nw28W5Q], reason [Failed to start shard, message [IndexShardGatewayRecoveryException[[sourcelines][0] failed to recover shard]; nested: TranslogCorruptedException[translog corruption while reading from stream]; nested: ElasticsearchException[failed to read [sourceline][22c2d1d1-8e73-47c0-b9fa-f8f5cc96b93f_796]]; nested: ElasticsearchIllegalArgumentException[No version type match [105]]; ]]

シャードを削除する必要がありますか? はいの場合、それを行う方法は?シャードを回復する方法は?インデックスは間違っていますか?[ソースライン] はマシンのどこにありますか? これで私を助けてください。

前もって感謝します。

4

5 に答える 5

19

ES インデックスが破損しているようです。

すべてのベース情報は DB に格納されます。手動で削除または更新しないでください。

逆に、ES インデックスを削除すると、次の起動時に再構築されます (データの量によっては時間がかかる場合があります)。

これを実現するには、SQ インスタンスのesディレクトリ内のディレクトリを削除します。data

于 2015-08-03T13:23:54.867 に答える
1

translog フォルダー内の .recovery ファイルを削除します

例:/es/elasticsearch-1.7.1/data/[elasticsearch_clustername]/nodes/0/indices/[indexname]/2/translog/

于 2015-09-01T14:50:02.997 に答える
1

データベースを使用してソナー分析の結果を保存している場合は、データベースに保存されている古い結果と新しい結果が混乱することがあるため、データベースを一度クリアしてからソナーを再度開始します。ファイルのインデックス作成を行っていません。

于 2015-08-03T10:58:16.893 に答える
0

ここで影響を受けるelasticsearchのトランスログの破損を具体的に修正する方法があります。受け入れられた回答は、サーバーのオーバーヘッドが高くなり、多くのデータ損失を受け入れるようです。最初のステップとして、ここで私の応答を見てください (Balaji の応答に似ていますが、公式ツールを使用しています): Elastic Search IndexShardGatewayRecoveryException

于 2018-08-13T13:25:21.303 に答える