huchuansai opened a new issue, #11229: URL: https://github.com/apache/dubbo/issues/11229
### Environment * Dubbo version: 2.7.8 * Operating System version: CentOs7.6 * Java version: 1.8 ### Steps to reproduce this issue 1. 服务A和服务B互为生产者和消费者,用Nacos作注册中心 2. 服务A重启,重启完毕后服务B调用服务A时报错 3. 主要错误信息:message can not send, because channel is closed ### stack info 01/03/2023 11:04:17 ERROR [http-nio-8685-exec-3]c.c.l.c.a.BaseExceptionHandlerAdvice - Failed to invoke the method getApprovalTodoCount in the service com.ctrod.cvoon.rpc.AdminRpcManager. Tried 3 times of the providers [10.1.138.65:20882] (1/1) from the registry 10.1.138.65:8848 on the consumer 10.1.138.65 using the dubbo version 2.7.8. Last error is: Failed to invoke remote method: getApprovalTodoCount, provider: dubbo://10.1.138.65:20882/com.ctrod.cvoon.rpc.AdminRpcManager?anyhost=true&application=LiveCloudBaseApplication&category=providers&check=false&deprecated=false&dispatcher=message&dubbo=2.0.2&dynamic=true&generic=false&init=false&interface=com.ctrod.cvoon.rpc.AdminRpcManager&metadata-type=remote&methods=getTimeOutMessageSubscribeSettingUserChooseDto,getCorpDto,checkCommunityPermission,getDepartmentMap,getDataPermissionUserIdList,getTimeOutMessageSubscribeSettingDto,getApprovalTodoCount&path=com.ctrod.cvoon.rpc.AdminRpcManager&pid=32612&protocol=dubbo&qos.enable=false®i ster.ip=10.1.138.65&release=2.7.15&remote.application=ctrod-cvoon-admin&retries=2&revision=1.0.0&service.name=ServiceBean:/com.ctrod.cvoon.rpc.AdminRpcManager&side=consumer&sticky=false&timeout=9000×tamp=1672715046548, cause: message can not send, because channel is closed . url:dubbo://10.1.138.65:20882/com.ctrod.cvoon.rpc.ApprovalRpcManager?anyhost=true&application=LiveCloudBaseApplication&category=providers&check=false&codec=dubbo&deprecated=false&dispatcher=message&dubbo=2.0.2&dynamic=true&generic=false&heartbeat=60000&init=false&interface=com.ctrod.cvoon.rpc.ApprovalRpcManager&metadata-type=remote&methods=needApprovalAndCheckPermission,cancelApproval,submitApprovalRecord&path=com.ctrod.cvoon.rpc.ApprovalRpcManager&pid=32612&protocol=dubbo&qos.enable=false®ister.ip=10.1.138.65&release=2.7.15&remote.application=ctrod-cvoon-admin&retries=2&revision=1.0.0&service.name=ServiceBean:/com.ctrod.cvoon.rpc.ApprovalRpcManager&side=consumer&sticky=false&timeout=9000×tamp=16723 05915260 org.apache.dubbo.rpc.RpcException: Failed to invoke the method getApprovalTodoCount in the service com.ctrod.cvoon.rpc.AdminRpcManager. Tried 3 times of the providers [10.1.138.65:20882] (1/1) from the registry 10.1.138.65:8848 on the consumer 10.1.138.65 using the dubbo version 2.7.8. Last error is: Failed to invoke remote method: getApprovalTodoCount, provider: dubbo://10.1.138.65:20882/com.ctrod.cvoon.rpc.AdminRpcManager?anyhost=true&application=LiveCloudBaseApplication&category=providers&check=false&deprecated=false&dispatcher=message&dubbo=2.0.2&dynamic=true&generic=false&init=false&interface=com.ctrod.cvoon.rpc.AdminRpcManager&metadata-type=remote&methods=getTimeOutMessageSubscribeSettingUserChooseDto,getCorpDto,checkCommunityPermission,getDepartmentMap,getDataPermissionUserIdList,getTimeOutMessageSubscribeSettingDto,getApprovalTodoCount&path=com.ctrod.cvoon.rpc.AdminRpcManager&pid=32612&protocol=dubbo&qos.enable=false®ister.ip=10.1.138.65&release=2.7.15&remote.applicatio n=ctrod-cvoon-admin&retries=2&revision=1.0.0&service.name=ServiceBean:/com.ctrod.cvoon.rpc.AdminRpcManager&side=consumer&sticky=false&timeout=9000×tamp=1672715046548, cause: message can not send, because channel is closed . url:dubbo://10.1.138.65:20882/com.ctrod.cvoon.rpc.ApprovalRpcManager?anyhost=true&application=LiveCloudBaseApplication&category=providers&check=false&codec=dubbo&deprecated=false&dispatcher=message&dubbo=2.0.2&dynamic=true&generic=false&heartbeat=60000&init=false&interface=com.ctrod.cvoon.rpc.ApprovalRpcManager&metadata-type=remote&methods=needApprovalAndCheckPermission,cancelApproval,submitApprovalRecord&path=com.ctrod.cvoon.rpc.ApprovalRpcManager&pid=32612&protocol=dubbo&qos.enable=false®ister.ip=10.1.138.65&release=2.7.15&remote.application=ctrod-cvoon-admin&retries=2&revision=1.0.0&service.name=ServiceBean:/com.ctrod.cvoon.rpc.ApprovalRpcManager&side=consumer&sticky=false&timeout=9000×tamp=1672305915260 at org.apache.dubbo.rpc.cluster.support.FailoverClusterInvoker.doInvoke(FailoverClusterInvoker.java:113) at org.apache.dubbo.rpc.cluster.support.AbstractClusterInvoker.invoke(AbstractClusterInvoker.java:260) at org.apache.dubbo.rpc.cluster.interceptor.ClusterInterceptor.intercept(ClusterInterceptor.java:47) at org.apache.dubbo.rpc.cluster.support.wrapper.AbstractCluster$InterceptorInvokerNode.invoke(AbstractCluster.java:92) at org.apache.dubbo.rpc.cluster.support.wrapper.MockClusterInvoker.invoke(MockClusterInvoker.java:88) at org.apache.dubbo.rpc.proxy.InvokerInvocationHandler.invoke(InvokerInvocationHandler.java:74) at org.apache.dubbo.common.bytecode.proxy2.getApprovalTodoCount(proxy2.java) at com.ctrod.live.cloud.manager.ext.BaseDataManagerImpl.pcIndexStatistics(BaseDataManagerImpl.java:241) at com.ctrod.live.cloud.controller.base.BaseDataController.pcIndexStatistics(BaseDataController.java:170) at sun.reflect.GeneratedMethodAccessor1387.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190) at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138) at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:105) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:878) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:792) at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1040) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898) at javax.servlet.http.HttpServlet.service(HttpServlet.java:626) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) at javax.servlet.http.HttpServlet.service(HttpServlet.java:733) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:123) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at com.ctrod.live.cloud.filter.BaseCorsFilter.doFilter(BaseCorsFilter.java:31) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:373) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1589) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:750) Caused by: org.apache.dubbo.remoting.RemotingException: message can not send, because channel is closed . url:dubbo://10.1.138.65:20882/com.ctrod.cvoon.rpc.ApprovalRpcManager?anyhost=true&application=LiveCloudBaseApplication&category=providers&check=false&codec=dubbo&deprecated=false&dispatcher=message&dubbo=2.0.2&dynamic=true&generic=false&heartbeat=60000&init=false&interface=com.ctrod.cvoon.rpc.ApprovalRpcManager&metadata-type=remote&methods=needApprovalAndCheckPermission,cancelApproval,submitApprovalRecord&path=com.ctrod.cvoon.rpc.ApprovalRpcManager&pid=32612&protocol=dubbo&qos.enable=false®ister.ip=10.1.138.65&release=2.7.15&remote.application=ctrod-cvoon-admin&retries=2&revision=1.0.0&service.name=ServiceBean:/com.ctrod.cvoon.rpc.ApprovalRpcManager&side=consumer&sticky=false&timeout=9000×tamp=1672305915260 at org.apache.dubbo.remoting.transport.AbstractClient.send(AbstractClient.java:176) at org.apache.dubbo.remoting.transport.AbstractPeer.send(AbstractPeer.java:53) at org.apache.dubbo.remoting.exchange.support.header.HeaderExchangeChannel.request(HeaderExchangeChannel.java:135) at org.apache.dubbo.remoting.exchange.support.header.HeaderExchangeClient.request(HeaderExchangeClient.java:95) at org.apache.dubbo.rpc.protocol.dubbo.ReferenceCountExchangeClient.request(ReferenceCountExchangeClient.java:91) at org.apache.dubbo.rpc.protocol.dubbo.DubboInvoker.doInvoke(DubboInvoker.java:105) at org.apache.dubbo.rpc.protocol.AbstractInvoker.invoke(AbstractInvoker.java:163) at org.apache.dubbo.rpc.protocol.AsyncToSyncInvoker.invoke(AsyncToSyncInvoker.java:52) at org.apache.dubbo.rpc.listener.ListenerInvokerWrapper.invoke(ListenerInvokerWrapper.java:78) at org.apache.dubbo.monitor.support.MonitorFilter.invoke(MonitorFilter.java:89) at org.apache.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:83) at org.apache.dubbo.rpc.protocol.dubbo.filter.FutureFilter.invoke(FutureFilter.java:51) at org.apache.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:83) at org.apache.dubbo.rpc.filter.ConsumerContextFilter.invoke(ConsumerContextFilter.java:69) at org.apache.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:83) at org.apache.dubbo.rpc.protocol.InvokerWrapper.invoke(InvokerWrapper.java:56) at org.apache.dubbo.rpc.cluster.support.FailoverClusterInvoker.doInvoke(FailoverClusterInvoker.java:82) ... 63 common frames omitted -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org For additional commands, e-mail: notifications-h...@dubbo.apache.org