Endecaの「ロックの取得に失敗しました」エラーを修正するにはどうすればよいですか?
質問
ここではEndecaは人気がないようです
問題:
実行中のベースライン更新プロセスを誤って強制終了し、ロックがどこかに残ってしまいます。
残ったロックがどこにあるのかを調べて、手動で削除したいと考えています。
ベースライン更新スクリプトによって返されるあまり役に立たないメッセージ:
INFO: Checking definition from AppConfig.xml against existing EAC provisioning. INFO: Definition has not changed. INFO: Starting baseline update script. WARNING: Failed to obtain lock. ...ended
あるいは、誰でも endeca ドキュメントへのリンクを (ログイン資格情報なしで) 提供できるのも役立ちます。
解決
RTFM
実行中の展開テンプレート スクリプトが、未処理の例外により実行の途中で中断された場合、または実行中にユーザーが Ctrl-C を押して手動で中断された場合、ロックは EAC 内に設定されたままになります。
Windows の場合: .\runcommand.bat LockManager releaseLock update_lock
UNIX の場合: ./runcommand.sh LockManager releaseLock update_lock
デフォルトのロック名が変更されていない場合(update_lock)、上記の両方が機能します。
他のヒント
これは便利時々に来るようあなたはそれらの配置テンプレートを使用していると仮定すると、私は「コントロール」ディレクトリで.BATファイルを保持します。
例えば。 Windowsマシン上で、その内容として、.batファイルのw /これを作成します:
rem runcommand.bat/sh LockManager releaseLock update_lock
call %~dp0..\config\script\set_environment.bat
call %~dp0runcommand.bat LockManager releaseLock update_lock
限りそのドキュメントが行くように...あなたは彼らのサポートサイトに登録する必要があります。私は他の場所でそれを見ていない。
(または「オラクルのWebコマース」)アプリケーション、実行中のベースラインインデックス操作がしDyn管理におけるProductCatalogSimpleIndexingAdminコンポーネントのGUIで[キャンセル]ボタンを経由してキャンセルされたときにこの状況が発生することがあります。手動操作がロックを解除しEndeca側に取られるまで、後続のベースラインの更新が失敗します。
(ATG 10.1.2 Endeca 3.1.1と統合して、私はこれを見てきました。)
「BUG 17298595 - - 更新ロックを解放しませんSimpleIndexingAdminからベースラインを解除する」 -私は、Oracleサポートとしていた会話ごとに、これはバグと考えられている。そしてATGの修正プログラムが提供されています。
release_update_locks.sh
フォルダからラン.bat
(またはWindowsの場合はcontrol
)スクリプトます。