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 2021/10/08 16:08:12 UTC

[lucene-solr] branch branch_8x updated: SOLR-15547 Configure JettySolrRunner to work correctly without system property jetty.testMode

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

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


The following commit(s) were added to refs/heads/branch_8x by this push:
     new dcd3ac7  SOLR-15547 Configure JettySolrRunner to work correctly without system property jetty.testMode
dcd3ac7 is described below

commit dcd3ac7674e006a173ef30d2181078fe21710a77
Author: Mark Miller <ma...@gmail.com>
AuthorDate: Fri Oct 8 11:07:45 2021 -0500

    SOLR-15547 Configure JettySolrRunner to work correctly without system property jetty.testMode
---
 .../apache/solr/client/solrj/embedded/JettyConfig.java    | 15 ++++++++++++---
 .../solr/client/solrj/embedded/JettySolrRunner.java       |  8 +++++---
 2 files changed, 17 insertions(+), 6 deletions(-)

diff --git a/solr/core/src/java/org/apache/solr/client/solrj/embedded/JettyConfig.java b/solr/core/src/java/org/apache/solr/client/solrj/embedded/JettyConfig.java
index e4a0547..b089fbc 100644
--- a/solr/core/src/java/org/apache/solr/client/solrj/embedded/JettyConfig.java
+++ b/solr/core/src/java/org/apache/solr/client/solrj/embedded/JettyConfig.java
@@ -30,11 +30,12 @@ public class JettyConfig {
 
   public final int port;
 
+  public final String host;
+
   public final String context;
 
   public final boolean enableV2;
 
-
   public final boolean stopAtShutdown;
   
   public final Long waitForLoadingCoresToFinishMs;
@@ -47,11 +48,12 @@ public class JettyConfig {
   
   public final int portRetryTime;
 
-  private JettyConfig(boolean onlyHttp1, int port, int portRetryTime , String context, boolean stopAtShutdown,
+  private JettyConfig(boolean onlyHttp1, int port, String host, int portRetryTime , String context, boolean stopAtShutdown,
                       Long waitForLoadingCoresToFinishMs, Map<ServletHolder, String> extraServlets,
                       Map<Class<? extends Filter>, String> extraFilters, SSLConfig sslConfig, boolean enableV2) {
     this.onlyHttp1 = onlyHttp1;
     this.port = port;
+    this.host = host;
     this.context = context;
     this.stopAtShutdown = stopAtShutdown;
     this.waitForLoadingCoresToFinishMs = waitForLoadingCoresToFinishMs;
@@ -69,6 +71,7 @@ public class JettyConfig {
   public static Builder builder(JettyConfig other) {
     Builder builder = new Builder();
     builder.port = other.port;
+    builder.host = other.host;
     builder.context = other.context;
     builder.stopAtShutdown = other.stopAtShutdown;
     builder.extraServlets = other.extraServlets;
@@ -81,6 +84,7 @@ public class JettyConfig {
 
     boolean onlyHttp1 = false;
     int port = 0;
+    String host = "127.0.0.1";
     String context = "/solr";
     boolean enableV2 = true;
     boolean stopAtShutdown = true;
@@ -104,6 +108,11 @@ public class JettyConfig {
       return this;
     }
 
+    public Builder setHost(String host) {
+      this.host = host;
+      return this;
+    }
+
     public Builder setContext(String context) {
       this.context = context;
       return this;
@@ -153,7 +162,7 @@ public class JettyConfig {
 
 
     public JettyConfig build() {
-      return new JettyConfig(onlyHttp1, port, portRetryTime, context, stopAtShutdown,
+      return new JettyConfig(onlyHttp1, port, host, portRetryTime, context, stopAtShutdown,
           waitForLoadingCoresToFinishMs, extraServlets, extraFilters, sslConfig, enableV2);
     }
 
diff --git a/solr/core/src/java/org/apache/solr/client/solrj/embedded/JettySolrRunner.java b/solr/core/src/java/org/apache/solr/client/solrj/embedded/JettySolrRunner.java
index 05db6fb..0d29009 100644
--- a/solr/core/src/java/org/apache/solr/client/solrj/embedded/JettySolrRunner.java
+++ b/solr/core/src/java/org/apache/solr/client/solrj/embedded/JettySolrRunner.java
@@ -320,15 +320,17 @@ public class JettySolrRunner {
 
       connector.setReuseAddress(true);
       connector.setPort(port);
-      connector.setHost("127.0.0.1");
+      connector.setHost(config.host);
       connector.setIdleTimeout(THREAD_POOL_MAX_IDLE_TIME_MS);
-      connector.setStopTimeout(0);
       server.setConnectors(new Connector[] {connector});
       server.setSessionIdManager(new DefaultSessionIdManager(server, new Random()));
     } else {
       HttpConfiguration configuration = new HttpConfiguration();
-      ServerConnector connector = new ServerConnector(server, new HttpConnectionFactory(configuration));
+      ServerConnector connector = new ServerConnector(server, new HttpConnectionFactory(configuration), new HTTP2CServerConnectionFactory(configuration));
+
+      connector.setReuseAddress(true);
       connector.setPort(port);
+      connector.setHost(config.host);
       connector.setIdleTimeout(THREAD_POOL_MAX_IDLE_TIME_MS);
       server.setConnectors(new Connector[] {connector});
     }