legacy-knowledge-base
公開されました Jul. 2, 2025

完全な再インデックス化を行わずに、破損したLuceneインデックスからインストールを回復することは可能ですか?

written-by

Daniel Couso

How To articles are not official guidelines or officially supported documentation. They are community-contributed content and may not always reflect the latest updates to Liferay DXP. We welcome your feedback to improve How To articles!

While we make every effort to ensure this Knowledge Base is accurate, it may not always reflect the most recent updates or official guidelines.We appreciate your understanding and encourage you to reach out with any feedback or concerns.

legacy-article

learn-legacy-article-disclaimer-text

問題

  • クラスターノードのログに、以下のような内容のエラーメッセージが1つ以上存在します:
    Initializing Lucene writer failed for 155
    java.io.IOException: read past EOF:MMapIndexInput(path="/opt/liferay/data/lucene/155/segments_645o4q")

Environment

  • Liferay Portal 6.2

解決策

  • 以下のプロパティが有効であることを前提とする:
    cluster.link.enabled=true
    ehcache.cluster.link.replication.enabled=true
    lucene.replicate.write=true
  • マスターノードのインデックスをスレーブノードに強制的にロードすることで、完全な再インデックス化を回避することは可能である。 これらがステップになるのでしょう:
    1. 万が一、元に戻す必要がある場合に備えて、インストールの機能的なバックアップをとっておく。
    2. 影響を受けるノードを停止する(影響を受けるノードのみ). 停止後、残りのアクティブなノードは、自動的に Lucene Master node として選択されるはずです。
    3. 対象ノードの <LIFERAY_HOME>/data/lucene フォルダーを削除する。
    4. 影響を受けるノードを起動します。
    5. マスターノードからインデックスが完全にロードできるようになるまで待ちます:
      • この再インデックス化には、現在のデータ量によってはかなりの時間がかかる場合があります。
      • 同様に、インデックスの再生成中は、再インデックス化が完了するまで、そのノードから利用できないクエリも出てくる可能性があります。
did-this-article-resolve-your-issue

legacy-knowledge-base