You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ja...@apache.org on 2023/12/07 10:54:24 UTC
(iotdb) 01/01: Support reconnect for JDBC
This is an automated email from the ASF dual-hosted git repository.
jackietien pushed a commit to branch JDBCReconnect
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit d211a392efa4aa890bd152f66dbd492b5b89e23b
Author: JackieTien97 <ja...@gmail.com>
AuthorDate: Thu Dec 7 18:54:09 2023 +0800
Support reconnect for JDBC
---
.../src/main/java/org/apache/iotdb/jdbc/IoTDBStatement.java | 13 ++++++++++---
1 file changed, 10 insertions(+), 3 deletions(-)
diff --git a/iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/IoTDBStatement.java b/iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/IoTDBStatement.java
index 31bd7a92624..9223502afea 100644
--- a/iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/IoTDBStatement.java
+++ b/iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/IoTDBStatement.java
@@ -736,9 +736,16 @@ public class IoTDBStatement implements Statement {
}
}
- private void reInit() {
+ private boolean reInit() throws SQLException {
this.client = connection.getClient();
this.sessionId = connection.getSessionId();
+ try {
+ this.stmtId = client.requestStatementId(sessionId);
+ return true;
+ } catch (Exception e) {
+ throw new SQLException(
+ "Cannot get id for statement after reconnecting. please check server status", e);
+ }
}
private void requestStmtId() throws SQLException {
@@ -759,9 +766,9 @@ public class IoTDBStatement implements Statement {
}
}
- private boolean reConnect() {
+ private boolean reConnect() throws SQLException {
boolean flag = connection.reconnect();
- reInit();
+ flag = flag && reInit();
return flag;
}