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/10/02 05:07:39 UTC
[lucene-solr] 02/02: @922 Exploring Http2SolrClient settings.
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 2bda48b42c7c997c828a872e9303768d39e9aa88
Author: markrmiller@gmail.com <ma...@gmail.com>
AuthorDate: Fri Oct 2 00:00:59 2020 -0500
@922 Exploring Http2SolrClient settings.
---
solr/core/src/java/org/apache/solr/update/UpdateShardHandler.java | 4 ++--
.../java/org/apache/solr/client/solrj/impl/Http2SolrClient.java | 8 ++++----
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/solr/core/src/java/org/apache/solr/update/UpdateShardHandler.java b/solr/core/src/java/org/apache/solr/update/UpdateShardHandler.java
index 06ade8a..0adcb6b 100644
--- a/solr/core/src/java/org/apache/solr/update/UpdateShardHandler.java
+++ b/solr/core/src/java/org/apache/solr/update/UpdateShardHandler.java
@@ -105,7 +105,7 @@ public class UpdateShardHandler implements SolrInfoBean {
.connectionTimeout(cfg.getDistributedConnectionTimeout())
.idleTimeout(cfg.getDistributedSocketTimeout());
}
- updateOnlyClient = updateOnlyClientBuilder.markInternalRequest().maxThreadPoolSize(256).maxRequestsQueuedPerDestination(8192).build();
+ updateOnlyClient = updateOnlyClientBuilder.markInternalRequest().maxThreadPoolSize(64).maxRequestsQueuedPerDestination(12000).build();
updateOnlyClient.enableCloseLock();
// updateOnlyClient.addListenerFactory(updateHttpListenerFactory);
Set<String> queryParams = new HashSet<>(2);
@@ -120,7 +120,7 @@ public class UpdateShardHandler implements SolrInfoBean {
// }
// recoveryExecutor = ExecutorUtil.newMDCAwareFixedThreadPool(cfg.getMaxRecoveryThreads(), recoveryThreadFactory);
// } else {
- log.debug("Creating recoveryExecutor with unbounded pool");
+
recoveryExecutor = ParWork.getRootSharedExecutor();
// }
}
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 040e2e0..2f2bdb9 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
@@ -217,7 +217,7 @@ public class Http2SolrClient extends SolrClient {
int minThreads = Integer.getInteger("solr.minHttp2ClientThreads", 12);
SolrQueuedThreadPool httpClientExecutor = new SolrQueuedThreadPool("http2Client", builder.maxThreadPoolSize, minThreads,
this.headers != null && this.headers.containsKey(QoSParams.REQUEST_SOURCE) && this.headers.get(QoSParams.REQUEST_SOURCE).equals(QoSParams.INTERNAL) ? 3000 : 5000,
- new ArrayBlockingQueue<>(256), (int) TimeUnit.SECONDS.toMillis(30), null);
+ null, -1, null);
httpClientExecutor.setLowThreadsThreshold(-1);
boolean sslOnJava8OrLower = ssl && !Constants.JRE_IS_MINIMUM_JAVA9;
@@ -227,12 +227,12 @@ public class Http2SolrClient extends SolrClient {
} else {
log.debug("Create Http2SolrClient with HTTP/1.1 transport");
}
- SolrHttpClientTransportOverHTTP transport = new SolrHttpClientTransportOverHTTP(3);
+ SolrHttpClientTransportOverHTTP transport = new SolrHttpClientTransportOverHTTP(2);
httpClient = new HttpClient(transport, sslContextFactory);
} else {
log.debug("Create Http2SolrClient with HTTP/2 transport");
HTTP2Client http2client = new HTTP2Client();
- http2client.setSelectors(3);
+ http2client.setSelectors(2);
http2client.setIdleTimeout(idleTimeout);
http2client.setMaxConcurrentPushedStreams(512);
http2client.setInputBufferSize(8192);
@@ -964,7 +964,7 @@ public class Http2SolrClient extends SolrClient {
public static class Builder {
- public int maxThreadPoolSize = Integer.getInteger("solr.maxHttp2ClientThreads", Math.max(256, ParWork.PROC_COUNT));
+ public int maxThreadPoolSize = Integer.getInteger("solr.maxHttp2ClientThreads", Math.max(64, ParWork.PROC_COUNT));
public int maxRequestsQueuedPerDestination = 2048;
private Http2SolrClient http2SolrClient;
private SSLConfig sslConfig = defaultSSLConfig;