Como corrigir o erro "Falha ao obter bloqueio" no Endeca?
Pergunta
Endeca não parece ser popular aqui, de qualquer maneira
O problema:
Mate acidentalmente um processo de atualização da linha de base em execução e a fechadura está à esquerda em algum lugar.
Desejo descobrir onde está a trava de esquerda e removeu manualmente isso.
Mensagem não é tão útil retornada pelo script de atualização da linha de base:
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
Como alternativa, qualquer pessoa pode fornecer alguns links sobre a documentação da Endeca (sem credencial de login) também será útil.
Solução
Rtfm
Se o script de modelo de implantação em execução quebrar no meio de sua execução devido a uma exceção não tratada ou for interrompida manualmente por um usuário pressionando CTRL-C enquanto estiver em execução, o bloqueio permanecerá definido no EAC.
No Windows: .\runcommand.bat LockManager releaseLock update_lock
No Unix: ./runcommand.sh LockManager releaseLock update_lock
Ambos os itens acima funcionarão se o nome de bloqueio padrão permanecer inalterado (update_lock)
Outras dicas
Supondo que você esteja usando o modelo de implantação, mantenho um arquivo .bat no diretor "Control", pois às vezes é útil.
Por exemplo, em uma máquina Windows, crie um arquivo .bat com isso como seu conteúdo:
rem runcommand.bat/sh LockManager releaseLock update_lock
call %~dp0..\config\script\set_environment.bat
call %~dp0runcommand.bat LockManager releaseLock update_lock
No que diz respeito à documentação deles ... você precisa se registrar no site de suporte deles. Eu não vi isso em outro lugar.
Para um aplicativo ATG (ou "Oracle Web Commerce") integrado ao Endeca, essa situação pode ocorrer quando uma operação de índice de linha de base em execução é cancelada através do botão Cancelar na GUI para o componente ProductalogSimpleIndexingAdmin no Dyn Admin. As atualizações de linha de base subsequentes falharão até que as medidas manuais sejam tomadas no lado Endeca para liberar o bloqueio.
(Vi isso com o Atg 10.1.2 integrado ao Endeca 3.1.1.)
Por uma conversa que tive com o suporte do Oracle, isso é considerado um bug - "Bug 17298595 - cancelando a linha de base do SimpleIndexingAdMin não libera o bloqueio de atualização" - e um hotfix ATG está disponível.
Corre release_update_locks.sh
(ou .bat
no caso de Windows) script do control
pasta do aplicativo.