[hibernate-commits] Hibernate SVN: r19290 - search/trunk/hibernate-search/src/main/java/org/hibernate/search/backend/impl/lucene.
hibernate-commits at lists.jboss.org
hibernate-commits at lists.jboss.org
Sun Apr 25 06:49:37 EDT 2010
Author: sannegrinovero
Date: 2010-04-25 06:49:36 -0400 (Sun, 25 Apr 2010)
New Revision: 19290
Modified:
search/trunk/hibernate-search/src/main/java/org/hibernate/search/backend/impl/lucene/PerDPResources.java
Log:
HSEARCH-516 Lucene Directories might be closed before the backend finished all tasks on shutdown
Modified: search/trunk/hibernate-search/src/main/java/org/hibernate/search/backend/impl/lucene/PerDPResources.java
===================================================================
--- search/trunk/hibernate-search/src/main/java/org/hibernate/search/backend/impl/lucene/PerDPResources.java 2010-04-24 10:08:27 UTC (rev 19289)
+++ search/trunk/hibernate-search/src/main/java/org/hibernate/search/backend/impl/lucene/PerDPResources.java 2010-04-25 10:49:36 UTC (rev 19290)
@@ -30,8 +30,11 @@
import org.hibernate.search.engine.SearchFactoryImplementor;
import org.hibernate.search.exception.ErrorHandler;
import org.hibernate.search.store.DirectoryProvider;
+import org.hibernate.search.util.LoggerFactory;
+import org.slf4j.Logger;
import java.util.concurrent.ExecutorService;
+import java.util.concurrent.TimeUnit;
/**
* Collects all resources needed to apply changes to one index,
@@ -41,6 +44,8 @@
*/
class PerDPResources {
+ private static final Logger log = LoggerFactory.make();
+
private final ExecutorService executor;
private final LuceneWorkVisitor visitor;
private final Workspace workspace;
@@ -77,6 +82,12 @@
executor.execute( new CloseIndexRunnable( workspace ) );
}
executor.shutdown();
+ try {
+ executor.awaitTermination( Long.MAX_VALUE, TimeUnit.SECONDS );
+ }
+ catch (InterruptedException e) {
+ log.warn( "Was interrupted while waiting for index activity to finish. Index might be inconsistent or have a stale lock" );
+ }
}
public ErrorHandler getErrorHandler() {
More information about the hibernate-commits
mailing list