From 15b4063da6ed978186a8b9057230c1f308461348 Mon Sep 17 00:00:00 2001 From: Tim Brooks Date: Fri, 25 May 2018 16:36:48 -0600 Subject: [PATCH 1/3] Fix location fo AbstractHttpServerTransport Currently AbstractHttpServerTransport is in a netty4 module. This is the incorrect location. This commit moves it out of netty4 module. Additionally, it moves unit tests that test AbstractHttpServerTransport logic to server. --- .../http/netty4/Netty4HttpServerTransport.java | 1 + .../elasticsearch/http/nio/NioHttpServerTransport.java | 2 +- .../http/{netty4 => }/AbstractHttpServerTransport.java | 2 +- .../http/AbstractHttpServerTransportTests.java | 9 +++------ 4 files changed, 6 insertions(+), 8 deletions(-) rename server/src/main/java/org/elasticsearch/http/{netty4 => }/AbstractHttpServerTransport.java (99%) rename modules/transport-netty4/src/test/java/org/elasticsearch/http/netty4/Netty4HttpPublishPortTests.java => server/src/test/java/org/elasticsearch/http/AbstractHttpServerTransportTests.java (93%) diff --git a/modules/transport-netty4/src/main/java/org/elasticsearch/http/netty4/Netty4HttpServerTransport.java b/modules/transport-netty4/src/main/java/org/elasticsearch/http/netty4/Netty4HttpServerTransport.java index 45e889797bde4..31c1214f03428 100644 --- a/modules/transport-netty4/src/main/java/org/elasticsearch/http/netty4/Netty4HttpServerTransport.java +++ b/modules/transport-netty4/src/main/java/org/elasticsearch/http/netty4/Netty4HttpServerTransport.java @@ -56,6 +56,7 @@ import org.elasticsearch.common.util.concurrent.ThreadContext; import org.elasticsearch.common.xcontent.NamedXContentRegistry; import org.elasticsearch.common.xcontent.XContentParser; +import org.elasticsearch.http.AbstractHttpServerTransport; import org.elasticsearch.http.BindHttpException; import org.elasticsearch.http.HttpHandlingSettings; import org.elasticsearch.http.HttpStats; diff --git a/plugins/transport-nio/src/main/java/org/elasticsearch/http/nio/NioHttpServerTransport.java b/plugins/transport-nio/src/main/java/org/elasticsearch/http/nio/NioHttpServerTransport.java index 825a023bd51bc..de5c166de3f5b 100644 --- a/plugins/transport-nio/src/main/java/org/elasticsearch/http/nio/NioHttpServerTransport.java +++ b/plugins/transport-nio/src/main/java/org/elasticsearch/http/nio/NioHttpServerTransport.java @@ -42,7 +42,7 @@ import org.elasticsearch.http.HttpHandlingSettings; import org.elasticsearch.http.HttpServerTransport; import org.elasticsearch.http.HttpStats; -import org.elasticsearch.http.netty4.AbstractHttpServerTransport; +import org.elasticsearch.http.AbstractHttpServerTransport; import org.elasticsearch.nio.AcceptingSelector; import org.elasticsearch.nio.AcceptorEventHandler; import org.elasticsearch.nio.BytesChannelContext; diff --git a/server/src/main/java/org/elasticsearch/http/netty4/AbstractHttpServerTransport.java b/server/src/main/java/org/elasticsearch/http/AbstractHttpServerTransport.java similarity index 99% rename from server/src/main/java/org/elasticsearch/http/netty4/AbstractHttpServerTransport.java rename to server/src/main/java/org/elasticsearch/http/AbstractHttpServerTransport.java index a0b3632310b24..b031dc6485073 100644 --- a/server/src/main/java/org/elasticsearch/http/netty4/AbstractHttpServerTransport.java +++ b/server/src/main/java/org/elasticsearch/http/AbstractHttpServerTransport.java @@ -17,7 +17,7 @@ * under the License. */ -package org.elasticsearch.http.netty4; +package org.elasticsearch.http; import com.carrotsearch.hppc.IntHashSet; import com.carrotsearch.hppc.IntSet; diff --git a/modules/transport-netty4/src/test/java/org/elasticsearch/http/netty4/Netty4HttpPublishPortTests.java b/server/src/test/java/org/elasticsearch/http/AbstractHttpServerTransportTests.java similarity index 93% rename from modules/transport-netty4/src/test/java/org/elasticsearch/http/netty4/Netty4HttpPublishPortTests.java rename to server/src/test/java/org/elasticsearch/http/AbstractHttpServerTransportTests.java index afa513275eabc..ee74d98002faa 100644 --- a/modules/transport-netty4/src/test/java/org/elasticsearch/http/netty4/Netty4HttpPublishPortTests.java +++ b/server/src/test/java/org/elasticsearch/http/AbstractHttpServerTransportTests.java @@ -17,13 +17,11 @@ * under the License. */ -package org.elasticsearch.http.netty4; +package org.elasticsearch.http; import org.elasticsearch.common.network.NetworkUtils; import org.elasticsearch.common.settings.Settings; import org.elasticsearch.common.transport.TransportAddress; -import org.elasticsearch.http.BindHttpException; -import org.elasticsearch.http.HttpTransportSettings; import org.elasticsearch.test.ESTestCase; import java.net.UnknownHostException; @@ -32,11 +30,11 @@ import static java.net.InetAddress.getByName; import static java.util.Arrays.asList; -import static org.elasticsearch.http.netty4.Netty4HttpServerTransport.resolvePublishPort; +import static org.elasticsearch.http.AbstractHttpServerTransport.resolvePublishPort; import static org.hamcrest.Matchers.containsString; import static org.hamcrest.Matchers.equalTo; -public class Netty4HttpPublishPortTests extends ESTestCase { +public class AbstractHttpServerTransportTests extends ESTestCase { public void testHttpPublishPort() throws Exception { int boundPort = randomIntBetween(9000, 9100); @@ -88,5 +86,4 @@ private List randomAddresses() throws UnknownHostException { } return addresses; } - } From 3554884bd96fbd6f3402ae16681136cdc1be8e53 Mon Sep 17 00:00:00 2001 From: Tim Brooks Date: Tue, 29 May 2018 09:46:26 -0600 Subject: [PATCH 2/3] Fix visibility issue. --- .../http/netty4/Netty4HttpServerTransportTests.java | 4 ++-- .../org/elasticsearch/http/AbstractHttpServerTransport.java | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/modules/transport-netty4/src/test/java/org/elasticsearch/http/netty4/Netty4HttpServerTransportTests.java b/modules/transport-netty4/src/test/java/org/elasticsearch/http/netty4/Netty4HttpServerTransportTests.java index 96b436ce7de43..5b22409b92da0 100644 --- a/modules/transport-netty4/src/test/java/org/elasticsearch/http/netty4/Netty4HttpServerTransportTests.java +++ b/modules/transport-netty4/src/test/java/org/elasticsearch/http/netty4/Netty4HttpServerTransportTests.java @@ -273,7 +273,7 @@ public void dispatchBadRequest(final RestRequest request, try (Netty4HttpServerTransport transport = new Netty4HttpServerTransport(settings, networkService, bigArrays, threadPool, xContentRegistry(), dispatcher)) { transport.start(); - final TransportAddress remoteAddress = randomFrom(transport.boundAddress.boundAddresses()); + final TransportAddress remoteAddress = randomFrom(transport.boundAddress().boundAddresses()); try (Netty4HttpClient client = new Netty4HttpClient()) { final String url = "/" + new String(new byte[maxInitialLineLength], Charset.forName("UTF-8")); @@ -352,7 +352,7 @@ public void dispatchBadRequest(final RestRequest request, try (Netty4HttpServerTransport transport = new Netty4HttpServerTransport(settings, networkService, bigArrays, threadPool, xContentRegistry(), dispatcher)) { transport.start(); - final TransportAddress remoteAddress = randomFrom(transport.boundAddress.boundAddresses()); + final TransportAddress remoteAddress = randomFrom(transport.boundAddress().boundAddresses()); AtomicBoolean channelClosed = new AtomicBoolean(false); diff --git a/server/src/main/java/org/elasticsearch/http/AbstractHttpServerTransport.java b/server/src/main/java/org/elasticsearch/http/AbstractHttpServerTransport.java index b031dc6485073..759ec029205b0 100644 --- a/server/src/main/java/org/elasticsearch/http/AbstractHttpServerTransport.java +++ b/server/src/main/java/org/elasticsearch/http/AbstractHttpServerTransport.java @@ -61,7 +61,7 @@ public abstract class AbstractHttpServerTransport extends AbstractLifecycleCompo protected final PortsRange port; protected final ByteSizeValue maxContentLength; - protected volatile BoundTransportAddress boundAddress; + private volatile BoundTransportAddress boundAddress; protected AbstractHttpServerTransport(Settings settings, NetworkService networkService, ThreadPool threadPool, Dispatcher dispatcher) { super(settings); From de0b3510b04368edffb0a5bb1a3457bfe094ad86 Mon Sep 17 00:00:00 2001 From: Tim Brooks Date: Tue, 29 May 2018 09:53:13 -0600 Subject: [PATCH 3/3] Cleanups --- .../org/elasticsearch/http/AbstractHttpServerTransport.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/server/src/main/java/org/elasticsearch/http/AbstractHttpServerTransport.java b/server/src/main/java/org/elasticsearch/http/AbstractHttpServerTransport.java index 759ec029205b0..c75754bde5855 100644 --- a/server/src/main/java/org/elasticsearch/http/AbstractHttpServerTransport.java +++ b/server/src/main/java/org/elasticsearch/http/AbstractHttpServerTransport.java @@ -30,8 +30,6 @@ import org.elasticsearch.common.transport.TransportAddress; import org.elasticsearch.common.unit.ByteSizeValue; import org.elasticsearch.common.util.concurrent.ThreadContext; -import org.elasticsearch.http.BindHttpException; -import org.elasticsearch.http.HttpInfo; import org.elasticsearch.rest.RestChannel; import org.elasticsearch.rest.RestRequest; import org.elasticsearch.threadpool.ThreadPool; @@ -61,7 +59,7 @@ public abstract class AbstractHttpServerTransport extends AbstractLifecycleCompo protected final PortsRange port; protected final ByteSizeValue maxContentLength; - private volatile BoundTransportAddress boundAddress; + protected volatile BoundTransportAddress boundAddress; protected AbstractHttpServerTransport(Settings settings, NetworkService networkService, ThreadPool threadPool, Dispatcher dispatcher) { super(settings);