2012-03-19 2 views
3

응용 프로그램 서버가 예기치 않게 종료되면 Hibernate Search가 Lucene을 정상적으로 종료 할 수 없습니다. 각 색인 디렉토리에 write.lock 파일을 남겨 둡니다. 그것은 물론 꽤 정상입니다. 그러나 잠금 파일은 응용 프로그램을 다시 시작한 후에도 남아 있습니다. 어느 시간에 잠금 시간 초과 예외가 발생합니다.Hibernate-Search 인덱스 복구를 처리하는 방법은 무엇입니까?

제 질문은 복구를 처리하는 일반적인 방법이 있는지 여부입니다.

염두에 두어야 할 첫 번째는 write.lock 파일이 있는지 확인하는 것입니다. 하나가 발견되면 제거되고 모든 색인이 다시 작성됩니다. 하지만 Hibernate-Search는 제대로 구성되면 자동으로이 작업을 수행합니까?

+0

이전에 write.lock 파일을 다룰 사람이 없었습니까? –

답변

3

최대 절전 모드 검색이 부팅시 잠금 파일을 제거하는 경우 동일한 색인에서 실행되도록 두 개의 응용 프로그램을 실수로 구성한 경우 색인을 파괴 할 수 있습니다. 따라서 잠금 파일을 삭제하지 않는 것이 잠금의 목적입니다.

아직도, 우리는이 성가신 깨달았다 : 당신도 기본 LockFactory (http://docs.jboss.org/hibernate/search/4.1/reference/en-US/html_single/#search-configuration-directory-lockfactories) 를 사용할 수있는 경우 충돌/JVM 잠금 파일을 해제합니다 죽였다.

최신 버전으로 업그레이드하면 감지 된 플랫폼이 충분히 안전하다고 생각되면 기본적으로 네이티브가 사용됩니다.

관련 문제