This is an automated email from the ASF dual-hosted git repository.

mxsm pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/eventmesh.git


The following commit(s) were added to refs/heads/master by this push:
     new 9ce5dd6fd [ISSUE #4855] Fix close tcp client failed (#4856)
9ce5dd6fd is described below

commit 9ce5dd6fd94d60d47358721a18eff0f50cd932ad
Author: Alonexc <[email protected]>
AuthorDate: Mon Apr 22 21:47:15 2024 +0800

    [ISSUE #4855] Fix close tcp client failed (#4856)
---
 .../java/org/apache/eventmesh/client/tcp/common/TcpClient.java   | 9 ++++++---
 .../client/tcp/impl/cloudevent/CloudEventTCPSubClient.java       | 1 -
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git 
a/eventmesh-sdks/eventmesh-sdk-java/src/main/java/org/apache/eventmesh/client/tcp/common/TcpClient.java
 
b/eventmesh-sdks/eventmesh-sdk-java/src/main/java/org/apache/eventmesh/client/tcp/common/TcpClient.java
index 4619f550e..0bcea6907 100644
--- 
a/eventmesh-sdks/eventmesh-sdk-java/src/main/java/org/apache/eventmesh/client/tcp/common/TcpClient.java
+++ 
b/eventmesh-sdks/eventmesh-sdk-java/src/main/java/org/apache/eventmesh/client/tcp/common/TcpClient.java
@@ -60,7 +60,7 @@ import lombok.extern.slf4j.Slf4j;
 @Slf4j
 public abstract class TcpClient implements Closeable {
 
-    protected static transient int CLIENTNO = 0;
+    protected static int CLIENTNO = 0;
 
     static {
         try {
@@ -123,12 +123,15 @@ public abstract class TcpClient implements Closeable {
     @Override
     public void close() {
         try {
+
+            goodbye();
+
             channel.disconnect().sync();
-            workers.shutdownGracefully();
+            workers.shutdownGracefully().sync();
             if (heartTask != null) {
                 heartTask.cancel(false);
             }
-            goodbye();
+
         } catch (Exception e) {
             Thread.currentThread().interrupt();
             log.warn("close tcp client failed.|remote address={}", 
channel.remoteAddress(), e);
diff --git 
a/eventmesh-sdks/eventmesh-sdk-java/src/main/java/org/apache/eventmesh/client/tcp/impl/cloudevent/CloudEventTCPSubClient.java
 
b/eventmesh-sdks/eventmesh-sdk-java/src/main/java/org/apache/eventmesh/client/tcp/impl/cloudevent/CloudEventTCPSubClient.java
index 836ad00dc..585a58b87 100644
--- 
a/eventmesh-sdks/eventmesh-sdk-java/src/main/java/org/apache/eventmesh/client/tcp/impl/cloudevent/CloudEventTCPSubClient.java
+++ 
b/eventmesh-sdks/eventmesh-sdk-java/src/main/java/org/apache/eventmesh/client/tcp/impl/cloudevent/CloudEventTCPSubClient.java
@@ -135,7 +135,6 @@ class CloudEventTCPSubClient extends TcpClient implements 
EventMeshTCPSubClient<
     @Override
     public void close() {
         try {
-            goodbye();
             super.close();
         } catch (Exception ex) {
             log.error("exception occurred when close", ex);


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to