This is an automated email from the ASF dual-hosted git repository.
caogaofei pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/master by this push:
new 5d916c08e94 Fix timeout doesn't take effect while using builder to
build session
5d916c08e94 is described below
commit 5d916c08e946547067d41103e6af3c117a24abd7
Author: Jackie Tien <[email protected]>
AuthorDate: Sat May 11 12:28:30 2024 +0800
Fix timeout doesn't take effect while using builder to build session
---
.../src/main/java/org/apache/iotdb/session/Session.java | 1 +
.../main/java/org/apache/iotdb/session/pool/SessionPool.java | 10 ++++++++++
.../src/test/java/org/apache/iotdb/session/SessionTest.java | 6 ++++++
3 files changed, 17 insertions(+)
diff --git
a/iotdb-client/session/src/main/java/org/apache/iotdb/session/Session.java
b/iotdb-client/session/src/main/java/org/apache/iotdb/session/Session.java
index 6c0a42e159c..626578c4f83 100644
--- a/iotdb-client/session/src/main/java/org/apache/iotdb/session/Session.java
+++ b/iotdb-client/session/src/main/java/org/apache/iotdb/session/Session.java
@@ -435,6 +435,7 @@ public class Session implements ISession {
this.enableAutoFetch = builder.enableAutoFetch;
this.maxRetryCount = builder.maxRetryCount;
this.retryIntervalInMs = builder.retryIntervalInMs;
+ this.queryTimeoutInMs = builder.timeOut;
}
@Override
diff --git
a/iotdb-client/session/src/main/java/org/apache/iotdb/session/pool/SessionPool.java
b/iotdb-client/session/src/main/java/org/apache/iotdb/session/pool/SessionPool.java
index c51a6b28692..2811193032c 100644
---
a/iotdb-client/session/src/main/java/org/apache/iotdb/session/pool/SessionPool.java
+++
b/iotdb-client/session/src/main/java/org/apache/iotdb/session/pool/SessionPool.java
@@ -487,6 +487,7 @@ public class SessionPool implements ISessionPool {
this.trustStorePwd = builder.trustStorePwd;
this.maxRetryCount = builder.maxRetryCount;
this.retryIntervalInMs = builder.retryIntervalInMs;
+ this.queryTimeoutInMs = builder.queryTimeoutInMs;
if (enableAutoFetch) {
initThreadPool();
@@ -541,6 +542,7 @@ public class SessionPool implements ISessionPool {
.trustStorePwd(trustStorePwd)
.maxRetryCount(maxRetryCount)
.retryIntervalInMs(retryIntervalInMs)
+ .timeOut(queryTimeoutInMs)
.build();
} else {
// Construct redirect-able Session
@@ -561,6 +563,7 @@ public class SessionPool implements ISessionPool {
.trustStorePwd(trustStorePwd)
.maxRetryCount(maxRetryCount)
.retryIntervalInMs(retryIntervalInMs)
+ .timeOut(queryTimeoutInMs)
.build();
}
session.setEnableQueryRedirection(enableQueryRedirection);
@@ -3530,6 +3533,8 @@ public class SessionPool implements ISessionPool {
private long retryIntervalInMs = SessionConfig.RETRY_INTERVAL_IN_MS;
+ private long queryTimeoutInMs = SessionConfig.DEFAULT_QUERY_TIME_OUT;
+
public Builder useSSL(boolean useSSL) {
this.useSSL = useSSL;
return this;
@@ -3640,6 +3645,11 @@ public class SessionPool implements ISessionPool {
return this;
}
+ public Builder queryTimeoutInMs(long queryTimeoutInMs) {
+ this.queryTimeoutInMs = queryTimeoutInMs;
+ return this;
+ }
+
public SessionPool build() {
return new SessionPool(this);
}
diff --git
a/iotdb-client/session/src/test/java/org/apache/iotdb/session/SessionTest.java
b/iotdb-client/session/src/test/java/org/apache/iotdb/session/SessionTest.java
index aec44fe3430..4ecd3f436bb 100644
---
a/iotdb-client/session/src/test/java/org/apache/iotdb/session/SessionTest.java
+++
b/iotdb-client/session/src/test/java/org/apache/iotdb/session/SessionTest.java
@@ -1200,4 +1200,10 @@ public class SessionTest {
assertEquals("nodeUrls shouldn't be empty.", e.getMessage());
}
}
+
+ @Test
+ public void testTimeoutUsingBuilder() {
+ ISession session1 = new Session.Builder().timeOut(1).build();
+ assertEquals(1L, session1.getQueryTimeout());
+ }
}