しばらく使わないと忘れがちなので、メモしておきます。
2020年8月23日日曜日
2020年8月16日日曜日
git特定のコミットのファイル一覧を表示するコマンド
「git show コミット番号」で全ての差分を表示することができます。
ただ、差分ではなく、ファイル一覧のみを表示したい時があります。
以下のコマンドを使えば、コミット内の全てのファイルをリストアップすることができます。
git diff -tree --no-commit- id --name-only -r [コミット番号] 例: git diff -tree --no-commit- id --name-only -r 1e3698d5fee9d3cdce68b6a708ba54efc47513d3 |
2020年6月20日土曜日
Solr Cloud一部のノードが「down」から復旧しない問題の解消方法
先日solr configファイルをいじって「upconfig」した後、solr再行動しようとしたらsolrが起動できなくなりました。
設定ファイルに何か問題があったようで、急いてconfigファイルを元に戻して再度solr再起動してみたら一応できましたが、ノードが「gone」の状態になっていまいました。
その後admin APIのDELETEREPLICAを使って消そうとしても消すことはできません。(使ったコマンドは以下の通りです。↓)
curl "http://localhost:8983/solr/admin/collections?action=DELETEREPLICA&collection=hoge&shard=shard1&replica=hoge_shard1_replica1" |
サービス稼働中であるため、collectionを消して作り直すもできません。変なことをしたら他の活きているノードもし死なせたらサービスダウンになってしまうので、結構焦りました。
Solr管理画面の「Core Admin」で確認すると、そのコアが消えた状態となっています。「Add Core」ボタンより前と同じ名前のコアを作ってみることにしました。そしたら以下のようなエラーが管理画面のトップで表示するようになりました。
SolrCore Initialization Failures org.apache.solr.common.SolrException:org.apache.solr.common.SolrException: Error opening new searcher |
調べてみたら、インデックスデータが作成中にシャットダウンしたり、接続が切断されたりすると、インデックスデータが破損して上記のエラーになってしまうようです。
解消方法は破損したデータを削除してsolrを再起動するだけです。具体的な手順は以下の通りです。
- まずsolrをstopします。
- tlogフォルダとdataフォルダの中身を全部削除します。
- もしwrite.lockがあればそのファイルも削除します。
- solrをstartします。
登録:
投稿 (Atom)