English 中文(简体)
How to fix "Failed to obtain lock" error in Endeca?
原标题:
  • 时间:2011-01-06 11:10:39
  •  标签:
  • bash
  • endeca

Endeca does not seems to be popular here, anyway

The problem:

Accidentally kill a running base line update process, and the lock is left-over somewhere.

I wish to find out where the left-over lock is, and to manually remove that.

Not so useful message returned by the base line update script:

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

Alternatively, anyone can provide some links on endeca documentation (without login credential) will be helpful too.

最佳回答

RTFM

If the running Deployment Template script breaks halfway through its execution due to an unhandled exception, or is manually interrupted by a user pressing Ctrl-C while it is running, the lock remains set within the EAC.

On Windows: . uncommand.bat LockManager releaseLock update_lock

On UNIX: ./runcommand.sh LockManager releaseLock update_lock

Both the above will work if the default lock name is unchanged (update_lock)

问题回答

Assuming you re using their deployment template, I keep a .bat file in the "control" dir as it comes in handy sometimes.

e.g. on a windows machine create a .bat file w/ this as its contents:

rem runcommand.bat/sh LockManager releaseLock update_lock

call %~dp0..configscriptset_environment.bat
call %~dp0runcommand.bat LockManager releaseLock update_lock

As far as their documentation goes... you have to register on their support site. I haven t seen it elsewhere.

For an ATG (or "Oracle Web Commerce") application integrated with Endeca, this situation can happen when a running baseline index operation is canceled via the Cancel button in the GUI for the ProductCatalogSimpleIndexingAdmin component in Dyn Admin. Subsequent baseline updates will fail until manual action is taken on the Endeca side to release the lock.

(I have seen this with ATG 10.1.2 integrated with Endeca 3.1.1.)

Per a conversation I had with Oracle Support, this is considered a bug -- "BUG 17298595 - Cancelling the baseline from SimpleIndexingAdmin does not release update lock" -- and an ATG hotfix is available.

Run release_update_locks.sh (or .bat in case of windows) script from the control folder of the app.





相关问题
Parse players currently in lobby

I m attempting to write a bash script to parse out the following log file and give me a list of CURRENT players in the room (so ignoring players that left, but including players that may have rejoined)...

encoding of file shell script

How can I check the file encoding in a shell script? I need to know if a file is encoded in utf-8 or iso-8859-1. Thanks

Bash usage of vi or emacs

From a programming standpoint, when you set the bash shell to use vi or emacs via set -o vi or set -o emacs What is actually going on here? I ve been reading a book where it claims the bash shell ...

Dynamically building a command in bash

I am construcing a command in bash dynamically. This works fine: COMMAND="java myclass" ${COMMAND} Now I want to dynamically construct a command that redirectes the output: LOG=">> myfile.log ...

Perform OR on two hash outputs of sha1sum

I want perform sha1sum file1 and sha1sum file2 and perform bitwise OR operation with them using bash. Output should be printable i.e 53a23bc2e24d039 ... (160 bit) How can I do this? I know echo $(( ...

Set screen-title from shellscript

Is it possible to set the Screen Title using a shell script? I thought about something like sending the key commands ctrl+A shift-A Name enter I searched for about an hour on how to emulate ...

热门标签