You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ma...@apache.org on 2020/11/10 22:10:31 UTC

[lucene-solr] 03/07: @1145 Raise timeouts for prod.

This is an automated email from the ASF dual-hosted git repository.

markrmiller pushed a commit to branch reference_impl_dev
in repository https://gitbox.apache.org/repos/asf/lucene-solr.git

commit 711be6208c4442db7f2f97c0367ffde35fd3e21c
Author: markrmiller@gmail.com <ma...@gmail.com>
AuthorDate: Tue Nov 10 15:14:39 2020 -0600

    @1145 Raise timeouts for prod.
---
 solr/core/src/java/org/apache/solr/cloud/ZkController.java       | 4 ++--
 .../src/java/org/apache/solr/cloud/overseer/ZkStateWriter.java   | 9 +--------
 2 files changed, 3 insertions(+), 10 deletions(-)

diff --git a/solr/core/src/java/org/apache/solr/cloud/ZkController.java b/solr/core/src/java/org/apache/solr/cloud/ZkController.java
index 10a86d4..fc57248 100644
--- a/solr/core/src/java/org/apache/solr/cloud/ZkController.java
+++ b/solr/core/src/java/org/apache/solr/cloud/ZkController.java
@@ -1357,7 +1357,7 @@ public class ZkController implements Closeable, Runnable {
       log.info("Register SolrCore, core={} baseUrl={} collection={}, shard={} skipRecovery={}", coreName, baseUrl, collection, shardId, skipRecovery);
       AtomicReference<DocCollection> coll = new AtomicReference<>();
       try {
-        zkStateReader.waitForState(collection, 3, TimeUnit.SECONDS, (l, c) -> { // nocommit timeout
+        zkStateReader.waitForState(collection, 30, TimeUnit.SECONDS, (l, c) -> { // nocommit timeout
 //          if (isClosed()) {
 //            throw new AlreadyClosedException();
 //          }
@@ -1410,7 +1410,7 @@ public class ZkController implements Closeable, Runnable {
       }
 
       log.info("Wait to see leader for {}, {}", collection, shardId);
-      Replica leader = zkStateReader.getLeaderRetry(collection, shardId, 10000);
+      Replica leader = zkStateReader.getLeaderRetry(collection, shardId, 15000);
 
       String ourUrl = replica.getCoreUrl();
       boolean isLeader = leader.getName() .equals(coreName);
diff --git a/solr/core/src/java/org/apache/solr/cloud/overseer/ZkStateWriter.java b/solr/core/src/java/org/apache/solr/cloud/overseer/ZkStateWriter.java
index 512183a..c90db99 100644
--- a/solr/core/src/java/org/apache/solr/cloud/overseer/ZkStateWriter.java
+++ b/solr/core/src/java/org/apache/solr/cloud/overseer/ZkStateWriter.java
@@ -256,7 +256,6 @@ public class ZkStateWriter {
   public void writePendingUpdates() {
 
     writeLock.lock();
-    Set<String> collectionsToWaitFor = ConcurrentHashMap.newKeySet();
     try {
       ourLock.lock();
       try {
@@ -273,17 +272,11 @@ public class ZkStateWriter {
           failedUpdates.clear();
           throw new SolrException(SolrException.ErrorCode.SERVER_ERROR, lastFailedException.get());
         }
-
-        for (String collectionName : cs.getCollectionStates().keySet()) {
-          DocCollection collection = cs.getCollectionOrNull(collectionName);
-          if (collection == null) return;
-          collectionsToWaitFor.add(collection.getName());
-        }
       } finally {
         ourLock.unlock();
       }
 
-      // wait to see our last publish version has propagated
+      // wait to see our last publish version has propagated TODO don't wait on collections not hosted on overseer?
       cs.forEachCollection(collection -> {
         if (collectionsToWrite.contains(collection.getName())) {
           Integer v = null;