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 2017/02/22 15:13:45 UTC
[1/5] lucene-solr:master: SOLR-9842: UpdateRequestProcessors have no
way to guarantee the closing of resources used for a request.
Repository: lucene-solr
Updated Branches:
refs/heads/master ee55bec9f -> 38a66f545
SOLR-9842: UpdateRequestProcessors have no way to guarantee the closing of resources used for a request.
Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/f2f8154d
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/f2f8154d
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/f2f8154d
Branch: refs/heads/master
Commit: f2f8154d0b6fe8d56974b008a0121d056dee3163
Parents: ee55bec
Author: markrmiller <ma...@apache.org>
Authored: Wed Feb 22 09:50:28 2017 -0500
Committer: markrmiller <ma...@apache.org>
Committed: Wed Feb 22 09:50:28 2017 -0500
----------------------------------------------------------------------
solr/CHANGES.txt | 3 +++
.../solr/handler/dataimport/SolrWriter.java | 6 +++++
.../org/apache/solr/handler/BlobHandler.java | 17 ++++++------
.../solr/handler/ContentStreamHandlerBase.java | 6 ++++-
.../solr/search/function/FileFloatSource.java | 14 +++++-----
.../java/org/apache/solr/update/PeerSync.java | 3 +++
.../java/org/apache/solr/update/UpdateLog.java | 3 +++
.../DocExpirationUpdateProcessorFactory.java | 6 ++++-
.../processor/UpdateRequestProcessor.java | 28 +++++++++++++++++++-
.../org/apache/solr/search/TestSearchPerf.java | 1 +
.../processor/TolerantUpdateProcessorTest.java | 7 +++--
.../processor/UpdateProcessorTestBase.java | 2 ++
12 files changed, 77 insertions(+), 19 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/f2f8154d/solr/CHANGES.txt
----------------------------------------------------------------------
diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index 20666fd..144a402 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -229,6 +229,9 @@ Other Changes
* SOLR-10173: Make HttpShardHandlerFactory.getReplicaListTransformer more extensible.
(Ramsey Haddad via Christine Poerschke)
+* SOLR-9842: UpdateRequestProcessors have no way to guarantee the closing of resources used for a request.
+ (Mark Miller)
+
================== 6.4.2 ==================
Consult the LUCENE_CHANGES.txt file for additional, low level, changes in this release.
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/f2f8154d/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/SolrWriter.java
----------------------------------------------------------------------
diff --git a/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/SolrWriter.java b/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/SolrWriter.java
index 8428837..3964f3f 100644
--- a/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/SolrWriter.java
+++ b/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/SolrWriter.java
@@ -16,6 +16,7 @@
*/
package org.apache.solr.handler.dataimport;
+import org.apache.solr.common.SolrException;
import org.apache.solr.common.SolrInputDocument;
import org.apache.solr.common.params.UpdateParams;
import org.apache.solr.request.SolrQueryRequest;
@@ -63,6 +64,11 @@ public class SolrWriter extends DIHWriterBase implements DIHWriter {
"Unable to call finish() on UpdateRequestProcessor", e);
} finally {
deltaKeys = null;
+ try {
+ processor.close();
+ } catch (IOException e) {
+ SolrException.log(log, e);
+ }
}
}
@Override
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/f2f8154d/solr/core/src/java/org/apache/solr/handler/BlobHandler.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/handler/BlobHandler.java b/solr/core/src/java/org/apache/solr/handler/BlobHandler.java
index f5b49ea..177af9e 100644
--- a/solr/core/src/java/org/apache/solr/handler/BlobHandler.java
+++ b/solr/core/src/java/org/apache/solr/handler/BlobHandler.java
@@ -231,14 +231,15 @@ public class BlobHandler extends RequestHandlerBase implements PluginInfoInitial
SolrInputDocument solrDoc = new SolrInputDocument();
for (Map.Entry<String, Object> e : doc.entrySet()) solrDoc.addField(e.getKey(), e.getValue());
UpdateRequestProcessorChain processorChain = req.getCore().getUpdateProcessorChain(req.getParams());
- UpdateRequestProcessor processor = processorChain.createProcessor(req, rsp);
- AddUpdateCommand cmd = new AddUpdateCommand(req);
- cmd.solrDoc = solrDoc;
- log.info("Adding doc: " + doc);
- processor.processAdd(cmd);
- log.info("committing doc: " + doc);
- processor.processCommit(new CommitUpdateCommand(req, false));
- processor.finish();
+ try (UpdateRequestProcessor processor = processorChain.createProcessor(req, rsp)) {
+ AddUpdateCommand cmd = new AddUpdateCommand(req);
+ cmd.solrDoc = solrDoc;
+ log.info("Adding doc: " + doc);
+ processor.processAdd(cmd);
+ log.info("committing doc: " + doc);
+ processor.processCommit(new CommitUpdateCommand(req, false));
+ processor.finish();
+ }
}
@Override
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/f2f8154d/solr/core/src/java/org/apache/solr/handler/ContentStreamHandlerBase.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/handler/ContentStreamHandlerBase.java b/solr/core/src/java/org/apache/solr/handler/ContentStreamHandlerBase.java
index 409b03f..1859f04 100644
--- a/solr/core/src/java/org/apache/solr/handler/ContentStreamHandlerBase.java
+++ b/solr/core/src/java/org/apache/solr/handler/ContentStreamHandlerBase.java
@@ -74,7 +74,11 @@ public abstract class ContentStreamHandlerBase extends RequestHandlerBase {
}
} finally {
// finish the request
- processor.finish();
+ try {
+ processor.finish();
+ } finally {
+ processor.close();
+ }
}
}
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/f2f8154d/solr/core/src/java/org/apache/solr/search/function/FileFloatSource.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/search/function/FileFloatSource.java b/solr/core/src/java/org/apache/solr/search/function/FileFloatSource.java
index aa26ec8..58e9d2f 100644
--- a/solr/core/src/java/org/apache/solr/search/function/FileFloatSource.java
+++ b/solr/core/src/java/org/apache/solr/search/function/FileFloatSource.java
@@ -337,13 +337,15 @@ public class FileFloatSource extends ValueSource {
FileFloatSource.resetCache();
log.debug("readerCache has been reset.");
- UpdateRequestProcessor processor =
- req.getCore().getUpdateProcessingChain(null).createProcessor(req, rsp);
- try{
+ UpdateRequestProcessor processor = req.getCore().getUpdateProcessingChain(null).createProcessor(req, rsp);
+ try {
RequestHandlerUtils.handleCommit(req, processor, req.getParams(), true);
- }
- finally{
- processor.finish();
+ } finally {
+ try {
+ processor.finish();
+ } finally {
+ processor.close();
+ }
}
}
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/f2f8154d/solr/core/src/java/org/apache/solr/update/PeerSync.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/update/PeerSync.java b/solr/core/src/java/org/apache/solr/update/PeerSync.java
index 88900aa..ac07413 100644
--- a/solr/core/src/java/org/apache/solr/update/PeerSync.java
+++ b/solr/core/src/java/org/apache/solr/update/PeerSync.java
@@ -40,6 +40,7 @@ import org.apache.solr.cloud.ZkController;
import org.apache.solr.common.SolrException;
import org.apache.solr.common.SolrInputDocument;
import org.apache.solr.common.params.ModifiableSolrParams;
+import org.apache.solr.common.util.IOUtils;
import org.apache.solr.common.util.StrUtils;
import org.apache.solr.core.SolrCore;
import org.apache.solr.core.SolrInfoMBean;
@@ -865,6 +866,8 @@ public class PeerSync implements SolrMetricProducer {
sreq.updateException = e;
log.error(msg() + "Error applying updates from " + sreq.shards + " ,finish()", e);
return false;
+ } finally {
+ IOUtils.closeQuietly(proc);
}
}
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/f2f8154d/solr/core/src/java/org/apache/solr/update/UpdateLog.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/update/UpdateLog.java b/solr/core/src/java/org/apache/solr/update/UpdateLog.java
index aaa6b6a..16eff9c 100644
--- a/solr/core/src/java/org/apache/solr/update/UpdateLog.java
+++ b/solr/core/src/java/org/apache/solr/update/UpdateLog.java
@@ -53,6 +53,7 @@ import org.apache.solr.common.SolrInputDocument;
import org.apache.solr.common.params.ModifiableSolrParams;
import org.apache.solr.common.params.SolrParams;
import org.apache.solr.common.util.ExecutorUtil;
+import org.apache.solr.common.util.IOUtils;
import org.apache.solr.core.PluginInfo;
import org.apache.solr.core.SolrCore;
import org.apache.solr.core.SolrInfoMBean;
@@ -1724,6 +1725,8 @@ public static final int VERSION_IDX = 1;
} catch (IOException ex) {
recoveryInfo.errors++;
loglog.error("Replay exception: finish()", ex);
+ } finally {
+ IOUtils.closeQuietly(proc);
}
} finally {
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/f2f8154d/solr/core/src/java/org/apache/solr/update/processor/DocExpirationUpdateProcessorFactory.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/update/processor/DocExpirationUpdateProcessorFactory.java b/solr/core/src/java/org/apache/solr/update/processor/DocExpirationUpdateProcessorFactory.java
index ffef1f3..332dba6 100644
--- a/solr/core/src/java/org/apache/solr/update/processor/DocExpirationUpdateProcessorFactory.java
+++ b/solr/core/src/java/org/apache/solr/update/processor/DocExpirationUpdateProcessorFactory.java
@@ -412,7 +412,11 @@ public final class DocExpirationUpdateProcessorFactory
proc.processCommit(commit);
} finally {
- proc.finish();
+ try {
+ proc.finish();
+ } finally {
+ proc.close();
+ }
}
log.info("Finished periodic deletion of expired docs");
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/f2f8154d/solr/core/src/java/org/apache/solr/update/processor/UpdateRequestProcessor.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/update/processor/UpdateRequestProcessor.java b/solr/core/src/java/org/apache/solr/update/processor/UpdateRequestProcessor.java
index 0a51d63..966299f 100644
--- a/solr/core/src/java/org/apache/solr/update/processor/UpdateRequestProcessor.java
+++ b/solr/core/src/java/org/apache/solr/update/processor/UpdateRequestProcessor.java
@@ -16,13 +16,18 @@
*/
package org.apache.solr.update.processor;
+import java.io.Closeable;
import java.io.IOException;
+import java.lang.invoke.MethodHandles;
+import org.apache.solr.common.SolrException;
import org.apache.solr.update.AddUpdateCommand;
import org.apache.solr.update.CommitUpdateCommand;
import org.apache.solr.update.DeleteUpdateCommand;
import org.apache.solr.update.MergeIndexesCommand;
import org.apache.solr.update.RollbackUpdateCommand;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
/**
@@ -37,7 +42,9 @@ import org.apache.solr.update.RollbackUpdateCommand;
*
* @since solr 1.3
*/
-public abstract class UpdateRequestProcessor {
+public abstract class UpdateRequestProcessor implements Closeable {
+ private static final Logger log = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
+
protected final UpdateRequestProcessor next;
public UpdateRequestProcessor( UpdateRequestProcessor next) {
@@ -72,5 +79,24 @@ public abstract class UpdateRequestProcessor {
public void finish() throws IOException {
if (next != null) next.finish();
}
+
+ @Override
+ public final void close() throws IOException {
+ UpdateRequestProcessor p = this;
+ while (p != null) {
+ try {
+ p.doClose();
+ } catch(Exception e) {
+ SolrException.log(log, "Exception closing processor", e);
+ }
+ p = p.next;
+ }
+ }
+
+ /**
+ * Override to implement resource release logic that *must* be called at the
+ * end of a request.
+ */
+ protected void doClose() {}
}
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/f2f8154d/solr/core/src/test/org/apache/solr/search/TestSearchPerf.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/search/TestSearchPerf.java b/solr/core/src/test/org/apache/solr/search/TestSearchPerf.java
index 8ad807c..a4b506b 100644
--- a/solr/core/src/test/org/apache/solr/search/TestSearchPerf.java
+++ b/solr/core/src/test/org/apache/solr/search/TestSearchPerf.java
@@ -123,6 +123,7 @@ public class TestSearchPerf extends AbstractSolrTestCase {
processor.processAdd(cmd);
}
processor.finish();
+ processor.close();
req.close();
assertU(commit());
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/f2f8154d/solr/core/src/test/org/apache/solr/update/processor/TolerantUpdateProcessorTest.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/update/processor/TolerantUpdateProcessorTest.java b/solr/core/src/test/org/apache/solr/update/processor/TolerantUpdateProcessorTest.java
index 7b077be..f4ab1fa 100644
--- a/solr/core/src/test/org/apache/solr/update/processor/TolerantUpdateProcessorTest.java
+++ b/solr/core/src/test/org/apache/solr/update/processor/TolerantUpdateProcessorTest.java
@@ -33,6 +33,7 @@ import org.apache.solr.common.SolrException;
import org.apache.solr.common.SolrInputDocument;
import org.apache.solr.common.params.ModifiableSolrParams;
import org.apache.solr.common.params.SolrParams;
+import org.apache.solr.common.util.IOUtils;
import org.apache.solr.common.util.SimpleOrderedMap;
import org.apache.solr.core.SolrCore;
import org.apache.solr.request.LocalSolrQueryRequest;
@@ -106,7 +107,7 @@ public class TolerantUpdateProcessorTest extends UpdateProcessorTestBase {
*/
public void testReflection() {
for (Method method : TolerantUpdateProcessor.class.getMethods()) {
- if (method.getDeclaringClass().equals(Object.class)) {
+ if (method.getDeclaringClass().equals(Object.class) || method.getName().equals("close")) {
continue;
}
assertEquals("base class(es) has changed, TolerantUpdateProcessor needs updated to ensure it " +
@@ -427,8 +428,9 @@ public class TolerantUpdateProcessorTest extends UpdateProcessorTestBase {
}
SolrQueryRequest req = new LocalSolrQueryRequest(core, requestParams);
+ UpdateRequestProcessor processor = null;
try {
- UpdateRequestProcessor processor = pc.createProcessor(req, rsp);
+ processor = pc.createProcessor(req, rsp);
for(SolrInputDocument doc:docs) {
AddUpdateCommand cmd = new AddUpdateCommand(req);
cmd.solrDoc = doc;
@@ -437,6 +439,7 @@ public class TolerantUpdateProcessorTest extends UpdateProcessorTestBase {
processor.finish();
} finally {
+ IOUtils.closeQuietly(processor);
req.close();
}
return rsp;
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/f2f8154d/solr/core/src/test/org/apache/solr/update/processor/UpdateProcessorTestBase.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/update/processor/UpdateProcessorTestBase.java b/solr/core/src/test/org/apache/solr/update/processor/UpdateProcessorTestBase.java
index 24d818e..e069ee2 100644
--- a/solr/core/src/test/org/apache/solr/update/processor/UpdateProcessorTestBase.java
+++ b/solr/core/src/test/org/apache/solr/update/processor/UpdateProcessorTestBase.java
@@ -18,6 +18,7 @@ package org.apache.solr.update.processor;
import org.apache.solr.SolrTestCaseJ4;
import org.apache.solr.common.params.SolrParams;
+import org.apache.solr.common.util.IOUtils;
import org.apache.solr.common.params.ModifiableSolrParams;
import org.apache.solr.common.SolrInputDocument;
import org.apache.solr.common.SolrInputField;
@@ -130,6 +131,7 @@ public class UpdateProcessorTestBase extends SolrTestCaseJ4 {
try {
processor.finish();
} finally {
+ IOUtils.closeQuietly(processor);
req.close();
}
}
[4/5] lucene-solr:master: test: speed up test
Posted by ma...@apache.org.
test: speed up test
Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/a342d6bb
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/a342d6bb
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/a342d6bb
Branch: refs/heads/master
Commit: a342d6bba6f5c3526763542ced8b4c7e5cda8d53
Parents: eb9e3cb
Author: markrmiller <ma...@apache.org>
Authored: Wed Feb 22 09:56:59 2017 -0500
Committer: markrmiller <ma...@apache.org>
Committed: Wed Feb 22 09:56:59 2017 -0500
----------------------------------------------------------------------
.../test/org/apache/solr/cloud/HttpPartitionTest.java | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a342d6bb/solr/core/src/test/org/apache/solr/cloud/HttpPartitionTest.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/cloud/HttpPartitionTest.java b/solr/core/src/test/org/apache/solr/cloud/HttpPartitionTest.java
index 82fbec0..5ae4c17 100644
--- a/solr/core/src/test/org/apache/solr/cloud/HttpPartitionTest.java
+++ b/solr/core/src/test/org/apache/solr/cloud/HttpPartitionTest.java
@@ -71,7 +71,7 @@ public class HttpPartitionTest extends AbstractFullDistribZkTestBase {
// To prevent the test assertions firing too fast before cluster state
// recognizes (and propagates) partitions
- protected static final long sleepMsBeforeHealPartition = 2000L;
+ protected static final long sleepMsBeforeHealPartition = 300;
// give plenty of time for replicas to recover when running in slow Jenkins test envs
protected static final int maxWaitSecsToSeeAllActive = 90;
@@ -340,16 +340,16 @@ public class HttpPartitionTest extends AbstractFullDistribZkTestBase {
log.info("Looked up max version bucket seed "+maxVersionBefore+" for core "+coreName);
// now up the stakes and do more docs
- int numDocs = 1000;
+ int numDocs = TEST_NIGHTLY ? 1000 : 100;
boolean hasPartition = false;
for (int d = 0; d < numDocs; d++) {
// create / restore partition every 100 docs
- if (d % 100 == 0) {
+ if (d % 10 == 0) {
if (hasPartition) {
proxy.reopen();
hasPartition = false;
} else {
- if (d >= 100) {
+ if (d >= 10) {
proxy.close();
hasPartition = true;
Thread.sleep(sleepMsBeforeHealPartition);
@@ -674,9 +674,9 @@ public class HttpPartitionTest extends AbstractFullDistribZkTestBase {
if (!allReplicasUp) {
try {
- Thread.sleep(1000L);
+ Thread.sleep(200L);
} catch (Exception ignoreMe) {}
- waitMs += 1000L;
+ waitMs += 200L;
}
} // end while
[2/5] lucene-solr:master: SOLR-9849: Use a very low value for
solr.cloud.wait-for-updates-with-stale-state-pause in tests.
Posted by ma...@apache.org.
SOLR-9849: Use a very low value for solr.cloud.wait-for-updates-with-stale-state-pause in tests.
Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/b28dc3fe
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/b28dc3fe
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/b28dc3fe
Branch: refs/heads/master
Commit: b28dc3fe346a80f2e6d56e5e7b611e9649c1a2f6
Parents: f2f8154
Author: markrmiller <ma...@apache.org>
Authored: Wed Feb 22 09:52:51 2017 -0500
Committer: markrmiller <ma...@apache.org>
Committed: Wed Feb 22 09:52:51 2017 -0500
----------------------------------------------------------------------
.../test/org/apache/solr/cloud/RecoveryAfterSoftCommitTest.java | 3 ---
solr/test-framework/src/java/org/apache/solr/SolrTestCaseJ4.java | 3 ++-
2 files changed, 2 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/b28dc3fe/solr/core/src/test/org/apache/solr/cloud/RecoveryAfterSoftCommitTest.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/cloud/RecoveryAfterSoftCommitTest.java b/solr/core/src/test/org/apache/solr/cloud/RecoveryAfterSoftCommitTest.java
index ba40758..c987c90 100644
--- a/solr/core/src/test/org/apache/solr/cloud/RecoveryAfterSoftCommitTest.java
+++ b/solr/core/src/test/org/apache/solr/cloud/RecoveryAfterSoftCommitTest.java
@@ -43,8 +43,6 @@ public class RecoveryAfterSoftCommitTest extends AbstractFullDistribZkTestBase {
public static void beforeTests() {
System.setProperty("solr.tests.maxBufferedDocs", String.valueOf(MAX_BUFFERED_DOCS));
System.setProperty("solr.ulog.numRecordsToKeep", String.valueOf(ULOG_NUM_RECORDS_TO_KEEP));
- // the default=7000ms artificially slows down recovery and is not needed for this test
- System.setProperty("solr.cloud.wait-for-updates-with-stale-state-pause", "500");
// avoid creating too many files, see SOLR-7421
System.setProperty("useCompoundFile", "true");
}
@@ -53,7 +51,6 @@ public class RecoveryAfterSoftCommitTest extends AbstractFullDistribZkTestBase {
public static void afterTest() {
System.clearProperty("solr.tests.maxBufferedDocs");
System.clearProperty("solr.ulog.numRecordsToKeep");
- System.clearProperty("solr.cloud.wait-for-updates-with-stale-state-pause");
System.clearProperty("useCompoundFile");
}
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/b28dc3fe/solr/test-framework/src/java/org/apache/solr/SolrTestCaseJ4.java
----------------------------------------------------------------------
diff --git a/solr/test-framework/src/java/org/apache/solr/SolrTestCaseJ4.java b/solr/test-framework/src/java/org/apache/solr/SolrTestCaseJ4.java
index c9b25a8..7d9d1f6 100644
--- a/solr/test-framework/src/java/org/apache/solr/SolrTestCaseJ4.java
+++ b/solr/test-framework/src/java/org/apache/solr/SolrTestCaseJ4.java
@@ -274,6 +274,7 @@ public abstract class SolrTestCaseJ4 extends LuceneTestCase {
System.setProperty("tests.shardhandler.randomSeed", Long.toString(random().nextLong()));
System.setProperty("solr.clustering.enabled", "false");
System.setProperty("solr.peerSync.useRangeVersions", String.valueOf(random().nextBoolean()));
+ System.setProperty("solr.cloud.wait-for-updates-with-stale-state-pause", "500");
startTrackingSearchers();
ignoreException("ignore_exception");
newRandomConfig();
@@ -322,7 +323,7 @@ public abstract class SolrTestCaseJ4 extends LuceneTestCase {
System.clearProperty("useCompoundFile");
System.clearProperty("urlScheme");
System.clearProperty("solr.peerSync.useRangeVersions");
-
+ System.clearProperty("solr.cloud.wait-for-updates-with-stale-state-pause");
HttpClientUtil.resetHttpClientBuilder();
// clean up static
[3/5] lucene-solr:master: SOLR-9848: Lower
solr.cloud.wait-for-updates-with-stale-state-pause back down from 7 seconds.
Posted by ma...@apache.org.
SOLR-9848: Lower solr.cloud.wait-for-updates-with-stale-state-pause back down from 7 seconds.
Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/eb9e3cba
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/eb9e3cba
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/eb9e3cba
Branch: refs/heads/master
Commit: eb9e3cba8d9d14991bfdc6451849947217fcb1e1
Parents: b28dc3f
Author: markrmiller <ma...@apache.org>
Authored: Wed Feb 22 09:54:48 2017 -0500
Committer: markrmiller <ma...@apache.org>
Committed: Wed Feb 22 09:54:48 2017 -0500
----------------------------------------------------------------------
solr/CHANGES.txt | 3 +++
solr/core/src/java/org/apache/solr/cloud/RecoveryStrategy.java | 2 +-
2 files changed, 4 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/eb9e3cba/solr/CHANGES.txt
----------------------------------------------------------------------
diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index 144a402..bb57255 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -232,6 +232,9 @@ Other Changes
* SOLR-9842: UpdateRequestProcessors have no way to guarantee the closing of resources used for a request.
(Mark Miller)
+* SOLR-9848: Lower solr.cloud.wait-for-updates-with-stale-state-pause back down from 7 seconds.
+ (Mark Miller)
+
================== 6.4.2 ==================
Consult the LUCENE_CHANGES.txt file for additional, low level, changes in this release.
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/eb9e3cba/solr/core/src/java/org/apache/solr/cloud/RecoveryStrategy.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/cloud/RecoveryStrategy.java b/solr/core/src/java/org/apache/solr/cloud/RecoveryStrategy.java
index 62d877b..3bd2e74 100644
--- a/solr/core/src/java/org/apache/solr/cloud/RecoveryStrategy.java
+++ b/solr/core/src/java/org/apache/solr/cloud/RecoveryStrategy.java
@@ -70,7 +70,7 @@ public class RecoveryStrategy extends Thread implements Closeable {
private static final Logger LOG = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
- private static final int WAIT_FOR_UPDATES_WITH_STALE_STATE_PAUSE = Integer.getInteger("solr.cloud.wait-for-updates-with-stale-state-pause", 7000);
+ private static final int WAIT_FOR_UPDATES_WITH_STALE_STATE_PAUSE = Integer.getInteger("solr.cloud.wait-for-updates-with-stale-state-pause", 2500);
private static final int MAX_RETRIES = 500;
private static final int STARTING_RECOVERY_DELAY = 5000;
[5/5] lucene-solr:master: tests: get leader to base clase
Posted by ma...@apache.org.
tests: get leader to base clase
Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/38a66f54
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/38a66f54
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/38a66f54
Branch: refs/heads/master
Commit: 38a66f5452ad61ef107c8d8851ffd5e9361a2a22
Parents: a342d6b
Author: markrmiller <ma...@apache.org>
Authored: Mon Dec 12 10:56:51 2016 -0500
Committer: markrmiller <ma...@apache.org>
Committed: Wed Feb 22 09:57:30 2017 -0500
----------------------------------------------------------------------
.../apache/solr/cloud/AbstractFullDistribZkTestBase.java | 9 +++++++++
1 file changed, 9 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/38a66f54/solr/test-framework/src/java/org/apache/solr/cloud/AbstractFullDistribZkTestBase.java
----------------------------------------------------------------------
diff --git a/solr/test-framework/src/java/org/apache/solr/cloud/AbstractFullDistribZkTestBase.java b/solr/test-framework/src/java/org/apache/solr/cloud/AbstractFullDistribZkTestBase.java
index 4b0f7ab..04eb722 100644
--- a/solr/test-framework/src/java/org/apache/solr/cloud/AbstractFullDistribZkTestBase.java
+++ b/solr/test-framework/src/java/org/apache/solr/cloud/AbstractFullDistribZkTestBase.java
@@ -829,6 +829,15 @@ public abstract class AbstractFullDistribZkTestBase extends AbstractDistribZkTes
// add to control second in case adding to shards fails
controlClient.add(doc);
}
+
+ protected ZkCoreNodeProps getLeaderUrlFromZk(String collection, String slice) {
+ ClusterState clusterState = getCommonCloudSolrClient().getZkStateReader().getClusterState();
+ ZkNodeProps leader = clusterState.getLeader(collection, slice);
+ if (leader == null) {
+ throw new RuntimeException("Could not find leader:" + collection + " " + slice);
+ }
+ return new ZkCoreNodeProps(leader);
+ }
@Override
protected void del(String q) throws Exception {