Merge branch 'stable-2.13'
* stable-2.13: Revert "Drain executor of index change requests before closing index" Change-Id: Ic5201df38c549312e83971232880a017c1bffb46
This commit is contained in:
@@ -30,11 +30,12 @@ import com.google.common.collect.ArrayListMultimap;
|
|||||||
import com.google.common.collect.FluentIterable;
|
import com.google.common.collect.FluentIterable;
|
||||||
import com.google.common.collect.ImmutableSet;
|
import com.google.common.collect.ImmutableSet;
|
||||||
import com.google.common.collect.Iterables;
|
import com.google.common.collect.Iterables;
|
||||||
|
import com.google.common.collect.Lists;
|
||||||
import com.google.common.collect.Multimap;
|
import com.google.common.collect.Multimap;
|
||||||
import com.google.common.collect.Sets;
|
import com.google.common.collect.Sets;
|
||||||
import com.google.common.util.concurrent.Futures;
|
import com.google.common.util.concurrent.Futures;
|
||||||
|
import com.google.common.util.concurrent.ListenableFuture;
|
||||||
import com.google.common.util.concurrent.ListeningExecutorService;
|
import com.google.common.util.concurrent.ListeningExecutorService;
|
||||||
import com.google.common.util.concurrent.MoreExecutors;
|
|
||||||
import com.google.gerrit.reviewdb.client.Account;
|
import com.google.gerrit.reviewdb.client.Account;
|
||||||
import com.google.gerrit.reviewdb.client.Change;
|
import com.google.gerrit.reviewdb.client.Change;
|
||||||
import com.google.gerrit.reviewdb.client.PatchSet;
|
import com.google.gerrit.reviewdb.client.PatchSet;
|
||||||
@@ -95,7 +96,6 @@ import java.util.Set;
|
|||||||
import java.util.concurrent.Callable;
|
import java.util.concurrent.Callable;
|
||||||
import java.util.concurrent.ExecutionException;
|
import java.util.concurrent.ExecutionException;
|
||||||
import java.util.concurrent.Future;
|
import java.util.concurrent.Future;
|
||||||
import java.util.concurrent.TimeUnit;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Secondary index implementation using Apache Lucene.
|
* Secondary index implementation using Apache Lucene.
|
||||||
@@ -189,13 +189,20 @@ public class LuceneChangeIndex implements ChangeIndex {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void close() {
|
public void close() {
|
||||||
MoreExecutors.shutdownAndAwaitTermination(
|
List<ListenableFuture<?>> closeFutures = Lists.newArrayListWithCapacity(2);
|
||||||
executor, Long.MAX_VALUE, TimeUnit.SECONDS);
|
closeFutures.add(executor.submit(new Runnable() {
|
||||||
try {
|
@Override
|
||||||
openIndex.close();
|
public void run() {
|
||||||
} finally {
|
openIndex.close();
|
||||||
closedIndex.close();
|
}
|
||||||
}
|
}));
|
||||||
|
closeFutures.add(executor.submit(new Runnable() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
closedIndex.close();
|
||||||
|
}
|
||||||
|
}));
|
||||||
|
Futures.getUnchecked(Futures.allAsList(closeFutures));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
Reference in New Issue
Block a user