You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by sl...@apache.org on 2024/01/17 14:02:42 UTC
(hadoop) branch branch-3.4 updated: YARN-11634. [Addendum] Speed-up TestTimelineClient. (#6419)
This is an automated email from the ASF dual-hosted git repository.
slfan1989 pushed a commit to branch branch-3.4
in repository https://gitbox.apache.org/repos/asf/hadoop.git
The following commit(s) were added to refs/heads/branch-3.4 by this push:
new a38d90267799 YARN-11634. [Addendum] Speed-up TestTimelineClient. (#6419)
a38d90267799 is described below
commit a38d902677998dfce2bce4fc8f842cfda477741c
Author: slfan1989 <55...@users.noreply.github.com>
AuthorDate: Mon Jan 15 15:44:17 2024 +0800
YARN-11634. [Addendum] Speed-up TestTimelineClient. (#6419)
Co-authored-by: slfan1989 <sl...@apache.org>
---
.../yarn/client/api/impl/TimelineClientImpl.java | 6 +++++
.../yarn/client/api/impl/TimelineConnector.java | 28 +++++++++++-----------
.../yarn/client/api/impl/TestTimelineClient.java | 4 ++--
3 files changed, 22 insertions(+), 16 deletions(-)
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/client/api/impl/TimelineClientImpl.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/client/api/impl/TimelineClientImpl.java
index 2b9ce4fa8f2a..45da0f444ba0 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/client/api/impl/TimelineClientImpl.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/client/api/impl/TimelineClientImpl.java
@@ -459,4 +459,10 @@ public class TimelineClientImpl extends TimelineClient {
public void setTimelineWriter(TimelineWriter writer) {
this.timelineWriter = writer;
}
+
+ @Private
+ @VisibleForTesting
+ public TimelineConnector getConnector() {
+ return connector;
+ }
}
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/client/api/impl/TimelineConnector.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/client/api/impl/TimelineConnector.java
index b139bddd101e..dce877f3cb83 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/client/api/impl/TimelineConnector.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/client/api/impl/TimelineConnector.java
@@ -78,8 +78,8 @@ public class TimelineConnector extends AbstractService {
private static final Joiner JOINER = Joiner.on("");
private static final Logger LOG =
LoggerFactory.getLogger(TimelineConnector.class);
- @VisibleForTesting
- public static int DEFAULT_SOCKET_TIMEOUT = 60_000; // 1 minute
+
+ private int socketTimeOut = 60_000;
private SSLFactory sslFactory;
Client client;
@@ -113,7 +113,7 @@ public class TimelineConnector extends AbstractService {
sslFactory = getSSLFactory(conf);
connConfigurator = getConnConfigurator(sslFactory);
} else {
- connConfigurator = DEFAULT_TIMEOUT_CONN_CONFIGURATOR;
+ connConfigurator = defaultTimeoutConnConfigurator;
}
String defaultAuth = UserGroupInformation.isSecurityEnabled() ?
KerberosAuthenticationHandler.TYPE :
@@ -140,23 +140,18 @@ public class TimelineConnector extends AbstractService {
}
}
- private static final ConnectionConfigurator DEFAULT_TIMEOUT_CONN_CONFIGURATOR
- = new ConnectionConfigurator() {
- @Override
- public HttpURLConnection configure(HttpURLConnection conn)
- throws IOException {
- setTimeouts(conn, DEFAULT_SOCKET_TIMEOUT);
- return conn;
- }
- };
+ private ConnectionConfigurator defaultTimeoutConnConfigurator = conn -> {
+ setTimeouts(conn, socketTimeOut);
+ return conn;
+ };
private ConnectionConfigurator getConnConfigurator(SSLFactory sslFactoryObj) {
try {
- return initSslConnConfigurator(DEFAULT_SOCKET_TIMEOUT, sslFactoryObj);
+ return initSslConnConfigurator(socketTimeOut, sslFactoryObj);
} catch (Exception e) {
LOG.debug("Cannot load customized ssl related configuration. "
+ "Fallback to system-generic settings.", e);
- return DEFAULT_TIMEOUT_CONN_CONFIGURATOR;
+ return defaultTimeoutConnConfigurator;
}
}
@@ -457,4 +452,9 @@ public class TimelineConnector extends AbstractService {
|| e instanceof SocketTimeoutException);
}
}
+
+ @VisibleForTesting
+ public void setSocketTimeOut(int socketTimeOut) {
+ this.socketTimeOut = socketTimeOut;
+ }
}
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/test/java/org/apache/hadoop/yarn/client/api/impl/TestTimelineClient.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/test/java/org/apache/hadoop/yarn/client/api/impl/TestTimelineClient.java
index cac620f66952..80e425e4853d 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/test/java/org/apache/hadoop/yarn/client/api/impl/TestTimelineClient.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/test/java/org/apache/hadoop/yarn/client/api/impl/TestTimelineClient.java
@@ -78,7 +78,7 @@ public class TestTimelineClient {
conf.setBoolean(YarnConfiguration.TIMELINE_SERVICE_ENABLED, true);
conf.setFloat(YarnConfiguration.TIMELINE_SERVICE_VERSION, 1.0f);
client = createTimelineClient(conf);
- TimelineConnector.DEFAULT_SOCKET_TIMEOUT = 10;
+ client.getConnector().setSocketTimeOut(10);
}
@AfterEach
@@ -89,7 +89,7 @@ public class TestTimelineClient {
if (isSSLConfigured()) {
KeyStoreTestUtil.cleanupSSLConfig(keystoresDir, sslConfDir);
}
- TimelineConnector.DEFAULT_SOCKET_TIMEOUT = 60_000;
+ client.getConnector().setSocketTimeOut(60_000);
}
@Test
---------------------------------------------------------------------
To unsubscribe, e-mail: common-commits-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-commits-help@hadoop.apache.org