You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ha...@apache.org on 2025/11/07 07:46:04 UTC
(iotdb) 01/01: Avoid unnecessary ssl error log caused by jdk bug
This is an automated email from the ASF dual-hosted git repository.
haonan pushed a commit to branch avoid_unnecessary_ssl_error_log
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 847ae81d9f2dcf7ce39ea4d2c37ff68004bb63b5
Author: HTHou <ha...@apache.org>
AuthorDate: Fri Nov 7 15:45:39 2025 +0800
Avoid unnecessary ssl error log caused by jdk bug
---
.../apache/iotdb/rpc/NettyTNonblockingTransport.java | 9 +++++----
.../apache/iotdb/rpc/TElasticFramedTransport.java | 20 ++++++++++++++------
2 files changed, 19 insertions(+), 10 deletions(-)
diff --git a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/NettyTNonblockingTransport.java b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/NettyTNonblockingTransport.java
index b42b901cc18..549e1bb2e0b 100644
--- a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/NettyTNonblockingTransport.java
+++ b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/NettyTNonblockingTransport.java
@@ -168,10 +168,11 @@ public class NettyTNonblockingTransport extends TNonblockingTransport {
"SSL handshake completed successfully for {}:{}", host, port);
}
} else {
- if (!future
- .cause()
- .getMessage()
- .contains("SslHandler removed before handshake completed")) {
+ if (future.cause().getMessage() != null
+ && !future
+ .cause()
+ .getMessage()
+ .contains("SslHandler removed before handshake completed")) {
logger.warn(
"SSL handshake failed for {}:{}", host, port, future.cause());
} else if (logger.isDebugEnabled()) {
diff --git a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/TElasticFramedTransport.java b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/TElasticFramedTransport.java
index c366d8a9333..6008988a809 100644
--- a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/TElasticFramedTransport.java
+++ b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/TElasticFramedTransport.java
@@ -132,13 +132,21 @@ public class TElasticFramedTransport extends TTransport {
if (e.getCause() instanceof SocketTimeoutException) {
throw new TTransportException(TTransportException.TIMED_OUT, e.getCause());
}
- // When client with SSL shut down due to time out. Some unnecessary error logs may be printed.
- // Adding this workaround to avoid the problem.
- if (e.getCause() instanceof SSLHandshakeException
- && e.getCause().getCause() != null
- && e.getCause().getCause() instanceof EOFException) {
- throw new TTransportException(TTransportException.END_OF_FILE, e.getCause());
+ if (e.getCause() instanceof SSLHandshakeException) {
+ // There is an unsolved JDK bug https://bugs.openjdk.org/browse/JDK-8221218.
+ // Adding this workaround to avoid the error log printed.
+ if (e.getMessage()
+ .contains("Insufficient buffer remaining for AEAD cipher fragment (2).")) {
+ throw new TTransportException(TTransportException.END_OF_FILE, e.getCause());
+ }
+ // When client with SSL shutdown due to time out. Some unnecessary error logs may be
+ // printed.
+ // Adding this workaround to avoid the problem.
+ if (e.getCause().getCause() != null && e.getCause().getCause() instanceof EOFException) {
+ throw new TTransportException(TTransportException.END_OF_FILE, e.getCause());
+ }
}
+
if (e.getCause() instanceof SSLException
&& e.getMessage().contains("Unsupported or unrecognized SSL message")) {
SocketAddress remoteAddress = null;