Adobe Commerceでカタログ検索の再インデックスが失敗する

カタログ検索のインデックス再作成がAdobe Commerceで失敗し、catalogsearch_fulltext インデクサーがインデックス再作成必須または停止状態のままになります。 検索結果には、最近のカタログの更新が反映されず、インデックス作成操作ではOpenSearch関連のエラーが返されます。 この問題を修正するには、カタログ検索インデックスを再実行する前に、インデクサーステータスを確認し、OpenSearch設定を確認し、cron ジョブを検証します。

説明 description

環境

  • Adobe Commerce 2.4.x
  • Adobe Commerce on Cloud Infrastructure
  • OpenSearch

問題/症状

  • カタログ検索は、インデックス作成の試行後も​ インデックス再作成が必要 ​状態のままです。
  • catalogsearch_fulltext インデクサーは、インデックス再作成操作を完了できません。
  • 検索結果には、最近のカタログの更新が反映されないか、不完全な状態が続きます。
  • インデックス作成操作は、Index is locked by another process, Fail in child process,circuit_breaking_exception.などのエラーを返します
  • カタログの更新後に検索機能が使用できなくなる

原因

カタログ検索のインデックス再作成は、Adobe CommerceがOpenSearch設定の問題、インデックス作成のロック、cron エラー、OpenSearch リソースの制約、拡張機能に関連するエラーが原因でcatalogsearch_fulltext インデックス作成プロセスを完了できない場合に失敗します。

解決策 resolution

問題を解決するには、次の手順に従います

  1. bin/magento indexer:statusを実行し、catalogsearch_fulltextのステータスを確認して、カタログ検索インデクサーのステータスを確認します。 インデクサーに「インデックス再作成が必要」と表示されている場合は、残りのトラブルシューティング手順に進みます。

  2. bin/magento config:show catalog/search/engineを実行して、Adobe Commerceが検索エンジンとしてOpenSearchを使用していることを確認します。 コマンドがopensearch.を返すことを確認します

  3. bin/magento indexer:reindex catalogsearch_fulltextを使用して手動でインデックス再作成を実行します。 コマンドが完了したら、ストアフロント検索で期待される結果が返されることを確認します。

  4. カタログ検索インデクサーがスタック状態のままであるか、引き続き​ インデックス再作成が必要 ​と報告される場合は、カタログ検索インデクサーをリセットします。 bin/magento indexer:reset catalogsearch_fulltext,を実行してからbin/magento indexer:reindex catalogsearch_fulltext.を再実行します

    メモ: インデクサーをリセットすると、Adobe Commerce内のステータスのみがリセットされます。 OpenSearch インデックスを削除したり、カタログデータを削除したりすることはありません。

  5. bin/magento cron:runを実行して、cron ジョブが正しく実行されていることを確認します。 スケジュールされたインデックス作成プロセスが正常に実行され、保留中のインデックス作成タスクが完了することを確認します。

  6. インデックス再作成がまだ失敗する場合は、正確なエラーメッセージを確認します。

    • カタログ検索が​ インデックス再作成が必須 ​のままである場合は、cron機能を確認し、手動でインデックス再作成を実行し、必要に応じてインデクサーをリセットします。
  7. エラーメッセージに「インデックスは別のプロセス​によってロックされています」と表示されているかどうかを確認します。

    • インデックス作成プロセスが現在実行されていないことを確認します。
    • 影響を受けるインデクサーをリセットします。
    • 再インデックスを再実行します。
  8. エラーメッセージに​ 子プロセスで失敗 ​が表示されているかどうかを確認します。

    • 例外ログを確認します。
    • OpenSearch関連のエラーが存在するかどうかを確認します。
    • このエラーは、通常、エラーの根本原因ではなく症状です。
    • 問題が解決しない場合は、Adobe サポート ​にお問い合わせください。
  9. エラーメッセージにcircuit_breaking_exceptionまたは​[の親] データが大きすぎるかどうかを確認してください

    • 使用可能なOpenSearch関連のエラーメッセージを確認します。
    • 詳細な調査については、Adobe サポート ​にお問い合わせください。
  10. インデックス再作成後も検索結果が未完成のままの場合:

    • 検索エンジンの設定を確認します。
    • カタログ検索のインデクサーのステータスを確認します。
    • 必要に応じてキャッシュをフラッシュします。
  11. 最初のトラブルシューティング手順として、OpenSearch インデックスを削除しないでください。

    • Adobe Commerceでは、インデックス再作成時に検索インデックスを再作成できます。
    • インデックスを削除しても、OpenSearch リソースの制約、OpenSearchの正常性の問題、OpenSearch接続の問題、インデックス作成操作の失敗などの問題は解決されません。
    • 根本原因がOpenSearchのヘルスまたはインフラストラクチャに関連する場合、同じ理由でインデックスの再構築が失敗します。
  12. 問題が解決しない場合は、Adobe サポート ​にお問い合わせください。

  • カタログ検索のインデックス再作成は常に失敗します。
  • インデクサーはリセット後も停止したままになります。
  • インデックス作成中にOpenSearch関連のエラーが表示されます。
  • インデックス再作成後も検索機能は使用できません。
  • 問題は特定の環境に分離されています。
  • 上記のトラブルシューティング手順を使用して、根本原因を特定することはできません。

次の情報を含めます。

  • bin/magento indexer:statusからの出力
  • bin/magento config:show catalog/search/engineからの出力
  • 関連する例外ログ
  • インデックス再作成中に正確なエラーメッセージが返されました
  • トラブルシューティング中に既に実行された手順

関連トピックス

recommendation-more-help
experience-cloud-kcs-help-kbarticles