You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@dubbo.apache.org by GitBox <gi...@apache.org> on 2022/07/19 10:05:52 UTC

[GitHub] [dubbo] focuse8 commented on issue #10340: [3.0.5]Filter链路异常导致ExecuteLimitFilter没有释放计数,导致服务调用不通。现象cause: The service using threads greater than limited

focuse8 commented on issue #10340:
URL: https://github.com/apache/dubbo/issues/10340#issuecomment-1188859071

   跟踪下来原因是因为dubbo3的异步模式,如果某个Filter抛异常导致org.apache.dubbo.rpc.cluster.filter.FilterChainBuilder.CallbackRegistrationInvoker#invoke不会正常结束,asyncResult.whenCompleteWithContext对应的回调不会执行。
   public Result invoke(Invocation invocation) throws RpcException {
               Result asyncResult = filterInvoker.invoke(invocation);
               asyncResult.whenCompleteWithContext((r, t) -> {
                   for (int i = filters.size() - 1; i >= 0; i--) {
                       //如果某个filter抛异常,这里代码不会执行
                   }
               });
   
               return asyncResult;
           }


-- 
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-unsubscribe@dubbo.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@dubbo.apache.org
For additional commands, e-mail: notifications-help@dubbo.apache.org