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/09/02 18:12:07 UTC
[lucene-solr] 10/11: @711 Some cleanup.
This is an automated email from the ASF dual-hosted git repository.
markrmiller pushed a commit to branch reference_impl
in repository https://gitbox.apache.org/repos/asf/lucene-solr.git
commit 4698153790f50d74b341c94d4bf67ae61fee39aa
Author: markrmiller@gmail.com <ma...@gmail.com>
AuthorDate: Wed Sep 2 12:26:35 2020 -0500
@711 Some cleanup.
---
.../org/apache/solr/update/SolrCmdDistributor.java | 3 +-
.../client/solrj/impl/CloudHttp2SolrClient.java | 35 +++++++++++++++-------
.../solr/client/solrj/impl/Http2SolrClient.java | 19 ++++++++----
.../solrj/impl/CloudHttp2SolrClientTest.java | 2 +-
.../client/solrj/impl/CloudSolrClientTest.java | 1 -
5 files changed, 40 insertions(+), 20 deletions(-)
diff --git a/solr/core/src/java/org/apache/solr/update/SolrCmdDistributor.java b/solr/core/src/java/org/apache/solr/update/SolrCmdDistributor.java
index 94aefe2..cd23463 100644
--- a/solr/core/src/java/org/apache/solr/update/SolrCmdDistributor.java
+++ b/solr/core/src/java/org/apache/solr/update/SolrCmdDistributor.java
@@ -26,6 +26,7 @@ import org.apache.solr.common.SolrException;
import org.apache.solr.common.cloud.ZkCoreNodeProps;
import org.apache.solr.common.cloud.ZkStateReader;
import org.apache.solr.common.params.ModifiableSolrParams;
+import org.apache.solr.common.util.IOUtils;
import org.apache.solr.common.util.NamedList;
import org.apache.solr.common.util.ObjectReleaseTracker;
import org.apache.solr.core.Diagnostics;
@@ -81,7 +82,7 @@ public class SolrCmdDistributor implements Closeable {
}
public void close() {
- ParWork.close(solrClient);
+ IOUtils.closeQuietly(solrClient);
assert ObjectReleaseTracker.release(this);
}
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/impl/CloudHttp2SolrClient.java b/solr/solrj/src/java/org/apache/solr/client/solrj/impl/CloudHttp2SolrClient.java
index 573d30d..ed3e7f3 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/impl/CloudHttp2SolrClient.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/impl/CloudHttp2SolrClient.java
@@ -122,17 +122,7 @@ public class CloudHttp2SolrClient extends BaseCloudSolrClient {
try {
MDC.put("CloudSolrClient.url", url);
try {
- myClient.request(lbRequest.request, null, new Http2SolrClient.OnComplete() {
-
- @Override
- public void onSuccess(NamedList result) {
- tsResponses.put(url, result);
- }
-
- @Override
- public void onFailure(Throwable t) {
- tsExceptions.put(url, t);
- }});
+ myClient.request(lbRequest.request, null, new UpdateOnComplete(tsResponses, url, tsExceptions));
} catch (IOException e) {
tsExceptions.put(url, e);
} catch (SolrServerException e) {
@@ -300,4 +290,27 @@ public class CloudHttp2SolrClient extends BaseCloudSolrClient {
}
}
+
+ private static class UpdateOnComplete implements Http2SolrClient.OnComplete {
+
+ private final Map<String,NamedList> tsResponses;
+ private final String url;
+ private final Map<String,Throwable> tsExceptions;
+
+ public UpdateOnComplete(Map<String,NamedList> tsResponses, String url, Map<String,Throwable> tsExceptions) {
+ this.tsResponses = tsResponses;
+ this.url = url;
+ this.tsExceptions = tsExceptions;
+ }
+
+ @Override
+ public void onSuccess(NamedList result) {
+ tsResponses.put(url, result);
+ }
+
+ @Override
+ public void onFailure(Throwable t) {
+ tsExceptions.put(url, t);
+ }
+ }
}
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/impl/Http2SolrClient.java b/solr/solrj/src/java/org/apache/solr/client/solrj/impl/Http2SolrClient.java
index b9da75a..1c6a002 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/impl/Http2SolrClient.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/impl/Http2SolrClient.java
@@ -874,12 +874,7 @@ public class Http2SolrClient extends SolrClient {
private final Semaphore available;
// wait for async requests
- private final Phaser phaser = new Phaser(1) {
- @Override
- protected boolean onAdvance(int phase, int parties) {
- return false;
- }
- };
+ private final Phaser phaser = new ThePhaser(1);
// maximum outstanding requests left
private final Request.QueuedListener queuedListener;
private final Response.CompleteListener completeListener;
@@ -938,6 +933,18 @@ public class Http2SolrClient extends SolrClient {
// ParWork.propegateInterrupt(ignored);
// }
}
+
+ private static class ThePhaser extends Phaser {
+
+ ThePhaser(int start) {
+ super(start);
+ }
+
+ @Override
+ protected boolean onAdvance(int phase, int parties) {
+ return false;
+ }
+ }
}
public static class Builder {
diff --git a/solr/solrj/src/test/org/apache/solr/client/solrj/impl/CloudHttp2SolrClientTest.java b/solr/solrj/src/test/org/apache/solr/client/solrj/impl/CloudHttp2SolrClientTest.java
index 4e66827..e602938 100644
--- a/solr/solrj/src/test/org/apache/solr/client/solrj/impl/CloudHttp2SolrClientTest.java
+++ b/solr/solrj/src/test/org/apache/solr/client/solrj/impl/CloudHttp2SolrClientTest.java
@@ -819,7 +819,7 @@ public class CloudHttp2SolrClientTest extends SolrCloudTestCase {
NamedList<Object> response = updateRequest.commit(getRandomClient(), "versions_collection").getResponse();
Object addsObject = response.get("adds");
- assertNotNull("There must be a adds parameter", addsObject);
+ assertNotNull("There must be a adds parameter: " + response.toString(), addsObject);
assertTrue(addsObject instanceof NamedList<?>);
NamedList<?> adds = (NamedList<?>) addsObject;
assertEquals("There must be 2 versions (one per doc)", 2, adds.size());
diff --git a/solr/solrj/src/test/org/apache/solr/client/solrj/impl/CloudSolrClientTest.java b/solr/solrj/src/test/org/apache/solr/client/solrj/impl/CloudSolrClientTest.java
index 1f57d5c..4d783d2 100644
--- a/solr/solrj/src/test/org/apache/solr/client/solrj/impl/CloudSolrClientTest.java
+++ b/solr/solrj/src/test/org/apache/solr/client/solrj/impl/CloudSolrClientTest.java
@@ -789,7 +789,6 @@ public class CloudSolrClientTest extends SolrCloudTestCase {
}
@Test
- @Ignore // nocommit ~ possible regression? response doesn't contain "adds"?
public void testVersionsAreReturned() throws Exception {
createTestCollection("versions_collection", 2, 1);