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
 | 
				
			||||||
 | 
					      public void run() {
 | 
				
			||||||
        openIndex.close();
 | 
					        openIndex.close();
 | 
				
			||||||
    } finally {
 | 
					      }
 | 
				
			||||||
 | 
					    }));
 | 
				
			||||||
 | 
					    closeFutures.add(executor.submit(new Runnable() {
 | 
				
			||||||
 | 
					      @Override
 | 
				
			||||||
 | 
					      public void run() {
 | 
				
			||||||
        closedIndex.close();
 | 
					        closedIndex.close();
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
 | 
					    }));
 | 
				
			||||||
 | 
					    Futures.getUnchecked(Futures.allAsList(closeFutures));
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  @Override
 | 
					  @Override
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user