This is an automated email from the ASF dual-hosted git repository.
leon pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/drill.git
The following commit(s) were added to refs/heads/master by this push:
new cea11e20a6 DRILL-8132: Improvement of RPC (#2464)
cea11e20a6 is described below
commit cea11e20a699c53dfdff21fdb6809f55f1142b88
Author: leon <[email protected]>
AuthorDate: Fri Jun 10 12:13:51 2022 +0800
DRILL-8132: Improvement of RPC (#2464)
Co-authored-by: feiteng.wtf <[email protected]>
---
.../drill/exec/rpc/control/ControlClient.java | 2 +-
.../drill/exec/rpc/control/ControlServer.java | 2 +-
.../org/apache/drill/exec/rpc/data/DataClient.java | 2 +-
.../org/apache/drill/exec/rpc/data/DataServer.java | 2 +-
.../apache/drill/exec/server/BootStrapContext.java | 28 +++++++++++++---------
.../apache/drill/exec/server/DrillbitContext.java | 2 +-
.../java-exec/src/main/resources/drill-module.conf | 2 +-
7 files changed, 23 insertions(+), 17 deletions(-)
diff --git
a/exec/java-exec/src/main/java/org/apache/drill/exec/rpc/control/ControlClient.java
b/exec/java-exec/src/main/java/org/apache/drill/exec/rpc/control/ControlClient.java
index d74402a22d..b95d42bfc3 100644
---
a/exec/java-exec/src/main/java/org/apache/drill/exec/rpc/control/ControlClient.java
+++
b/exec/java-exec/src/main/java/org/apache/drill/exec/rpc/control/ControlClient.java
@@ -50,7 +50,7 @@ public class ControlClient extends BasicClient<RpcType,
ControlConnection, BitCo
super(ControlRpcConfig.getMapping(config.getBootstrapContext().getConfig(),
config.getBootstrapContext().getExecutor()),
config.getAllocator().getAsByteBufAllocator(),
- config.getBootstrapContext().getBitLoopGroup(),
+ config.getBootstrapContext().getControlLoopGroup(),
RpcType.HANDSHAKE,
BitControlHandshake.class,
BitControlHandshake.PARSER);
diff --git
a/exec/java-exec/src/main/java/org/apache/drill/exec/rpc/control/ControlServer.java
b/exec/java-exec/src/main/java/org/apache/drill/exec/rpc/control/ControlServer.java
index d8cc3fbff4..a70cfb2d7c 100644
---
a/exec/java-exec/src/main/java/org/apache/drill/exec/rpc/control/ControlServer.java
+++
b/exec/java-exec/src/main/java/org/apache/drill/exec/rpc/control/ControlServer.java
@@ -41,7 +41,7 @@ public class ControlServer extends BasicServer<RpcType,
ControlConnection>{
super(ControlRpcConfig.getMapping(config.getBootstrapContext().getConfig(),
config.getBootstrapContext().getExecutor()),
config.getAllocator().getAsByteBufAllocator(),
- config.getBootstrapContext().getBitLoopGroup());
+ config.getBootstrapContext().getControlLoopGroup());
this.config = config;
this.connectionRegistry = connectionRegistry;
}
diff --git
a/exec/java-exec/src/main/java/org/apache/drill/exec/rpc/data/DataClient.java
b/exec/java-exec/src/main/java/org/apache/drill/exec/rpc/data/DataClient.java
index da6e176d03..306ca90166 100644
---
a/exec/java-exec/src/main/java/org/apache/drill/exec/rpc/data/DataClient.java
+++
b/exec/java-exec/src/main/java/org/apache/drill/exec/rpc/data/DataClient.java
@@ -51,7 +51,7 @@ public class DataClient extends BasicClient<RpcType,
DataClientConnection, BitCl
DataRpcConfig.getMapping(config.getBootstrapContext().getConfig(),
config.getBootstrapContext().getExecutor()),
config.getAllocator().getAsByteBufAllocator(),
- config.getBootstrapContext().getBitClientLoopGroup(),
+ config.getBootstrapContext().getDataClientLoopGroup(),
RpcType.HANDSHAKE,
BitServerHandshake.class,
BitServerHandshake.PARSER);
diff --git
a/exec/java-exec/src/main/java/org/apache/drill/exec/rpc/data/DataServer.java
b/exec/java-exec/src/main/java/org/apache/drill/exec/rpc/data/DataServer.java
index c4c84909fe..dc593e3623 100644
---
a/exec/java-exec/src/main/java/org/apache/drill/exec/rpc/data/DataServer.java
+++
b/exec/java-exec/src/main/java/org/apache/drill/exec/rpc/data/DataServer.java
@@ -41,7 +41,7 @@ public class DataServer extends BasicServer<RpcType,
DataServerConnection> {
DataRpcConfig.getMapping(config.getBootstrapContext().getConfig(),
config.getBootstrapContext().getExecutor()),
config.getAllocator().getAsByteBufAllocator(),
- config.getBootstrapContext().getBitLoopGroup());
+ config.getBootstrapContext().getDataServerLoopGroup());
this.config = config;
}
diff --git
a/exec/java-exec/src/main/java/org/apache/drill/exec/server/BootStrapContext.java
b/exec/java-exec/src/main/java/org/apache/drill/exec/server/BootStrapContext.java
index b0908577ad..a353d812e2 100644
---
a/exec/java-exec/src/main/java/org/apache/drill/exec/server/BootStrapContext.java
+++
b/exec/java-exec/src/main/java/org/apache/drill/exec/server/BootStrapContext.java
@@ -63,8 +63,9 @@ public class BootStrapContext implements AutoCloseable {
private final DrillConfig config;
private final CaseInsensitiveMap<OptionDefinition> definitions;
private final AuthenticatorProvider authProvider;
- private final EventLoopGroup loop;
- private final EventLoopGroup loop2;
+ private final EventLoopGroup controlLoopGroup;
+ private final EventLoopGroup dataClientLoopGroup;
+ private final EventLoopGroup dataServerLoopGroup;
private final MetricRegistry metrics;
private final BufferAllocator allocator;
private final ScanResult classpathScan;
@@ -81,8 +82,9 @@ public class BootStrapContext implements AutoCloseable {
this.hostName = getCanonicalHostName();
login(config);
this.authProvider = new AuthenticatorProviderImpl(config, classpathScan);
- this.loop =
TransportCheck.createEventLoopGroup(config.getInt(ExecConstants.BIT_SERVER_RPC_THREADS),
"BitServer-");
- this.loop2 =
TransportCheck.createEventLoopGroup(config.getInt(ExecConstants.BIT_SERVER_RPC_THREADS),
"BitClient-");
+ this.controlLoopGroup =
TransportCheck.createEventLoopGroup(config.getInt(ExecConstants.BIT_SERVER_RPC_THREADS),
"Control-");
+ this.dataClientLoopGroup =
TransportCheck.createEventLoopGroup(config.getInt(ExecConstants.BIT_SERVER_RPC_THREADS),
"DataClient-");
+ this.dataServerLoopGroup =
TransportCheck.createEventLoopGroup(config.getInt(ExecConstants.BIT_SERVER_RPC_THREADS),
"DataServer-");
// Note that metrics are stored in a static instance
this.metrics = DrillMetrics.getRegistry();
this.allocator = RootAllocatorFactory.newRoot(config);
@@ -195,12 +197,16 @@ public class BootStrapContext implements AutoCloseable {
return definitions;
}
- public EventLoopGroup getBitLoopGroup() {
- return loop;
+ public EventLoopGroup getControlLoopGroup() {
+ return controlLoopGroup;
}
- public EventLoopGroup getBitClientLoopGroup() {
- return loop2;
+ public EventLoopGroup getDataClientLoopGroup() {
+ return dataClientLoopGroup;
+ }
+
+ public EventLoopGroup getDataServerLoopGroup() {
+ return dataClientLoopGroup;
}
public MetricRegistry getMetrics() {
@@ -258,9 +264,9 @@ public class BootStrapContext implements AutoCloseable {
try {
AutoCloseables.close(allocator, authProvider);
- shutdown(loop);
- shutdown(loop2);
-
+ shutdown(controlLoopGroup);
+ shutdown(dataClientLoopGroup);
+ shutdown(dataServerLoopGroup);
} catch (final Exception e) {
logger.error("Error while closing", e);
}
diff --git
a/exec/java-exec/src/main/java/org/apache/drill/exec/server/DrillbitContext.java
b/exec/java-exec/src/main/java/org/apache/drill/exec/server/DrillbitContext.java
index bcc446b4ac..e17b4fab4e 100644
---
a/exec/java-exec/src/main/java/org/apache/drill/exec/server/DrillbitContext.java
+++
b/exec/java-exec/src/main/java/org/apache/drill/exec/server/DrillbitContext.java
@@ -227,7 +227,7 @@ public class DrillbitContext implements AutoCloseable {
public OAuthTokenProvider getoAuthTokenProvider() { return
oAuthTokenProvider; }
public EventLoopGroup getBitLoopGroup() {
- return context.getBitLoopGroup();
+ return context.getControlLoopGroup();
}
public DataConnectionCreator getDataConnectionsPool() {
diff --git a/exec/java-exec/src/main/resources/drill-module.conf
b/exec/java-exec/src/main/resources/drill-module.conf
index d5277ff54c..e36b4ffb09 100644
--- a/exec/java-exec/src/main/resources/drill-module.conf
+++ b/exec/java-exec/src/main/resources/drill-module.conf
@@ -91,7 +91,7 @@ drill.exec: {
count: 7200,
delay: 500
},
- threads: 10
+ threads: 8
memory: {
control: {
reservation: 0,