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

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


The following commit(s) were added to refs/heads/master by this push:
     new 161380c  About the application of spring management repeated 
monitoring processing dubbo shutdown. (#7317)
161380c is described below

commit 161380c599761ed3c7ba43dcce25e83dd6e78ac5
Author: xiaoheng1 <[email protected]>
AuthorDate: Sun May 16 19:55:31 2021 +0800

    About the application of spring management repeated monitoring processing 
dubbo shutdown. (#7317)
    
    * fix #7093 About the application of spring management repeated monitoring 
processing dubbo shutdown.
    
    * spring container use dubbo hook to cycle resource.
---
 .../dubbo/config/spring/context/DubboBootstrapApplicationListener.java | 3 ++-
 .../apache/dubbo/config/spring/extension/SpringExtensionFactory.java   | 3 +++
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git 
a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/context/DubboBootstrapApplicationListener.java
 
b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/context/DubboBootstrapApplicationListener.java
index 2c5829d..1911eb5 100644
--- 
a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/context/DubboBootstrapApplicationListener.java
+++ 
b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/context/DubboBootstrapApplicationListener.java
@@ -16,6 +16,7 @@
  */
 package org.apache.dubbo.config.spring.context;
 
+import org.apache.dubbo.config.DubboShutdownHook;
 import org.apache.dubbo.config.bootstrap.DubboBootstrap;
 
 import com.alibaba.spring.context.OnceApplicationContextEventListener;
@@ -70,7 +71,7 @@ public class DubboBootstrapApplicationListener extends 
OnceApplicationContextEve
     }
 
     private void onContextClosedEvent(ContextClosedEvent event) {
-        dubboBootstrap.stop();
+        DubboShutdownHook.getDubboShutdownHook().run();
     }
 
     @Override
diff --git 
a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/extension/SpringExtensionFactory.java
 
b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/extension/SpringExtensionFactory.java
index 6e08c62..de2aeee 100644
--- 
a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/extension/SpringExtensionFactory.java
+++ 
b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/extension/SpringExtensionFactory.java
@@ -21,6 +21,7 @@ import org.apache.dubbo.common.extension.SPI;
 import org.apache.dubbo.common.logger.Logger;
 import org.apache.dubbo.common.logger.LoggerFactory;
 import org.apache.dubbo.common.utils.ConcurrentHashSet;
+import org.apache.dubbo.config.DubboShutdownHook;
 import org.springframework.context.ApplicationContext;
 import org.springframework.context.ConfigurableApplicationContext;
 
@@ -40,6 +41,8 @@ public class SpringExtensionFactory implements 
ExtensionFactory {
         CONTEXTS.add(context);
         if (context instanceof ConfigurableApplicationContext) {
             ((ConfigurableApplicationContext) context).registerShutdownHook();
+            // see https://github.com/apache/dubbo/issues/7093
+            DubboShutdownHook.getDubboShutdownHook().unregister();
         }
     }
 

Reply via email to