kazetyan opened a new issue, #11720: URL: https://github.com/apache/dubbo/issues/11720
<!-- If you need to report a security issue please visit https://github.com/apache/dubbo/security/policy --> - [x] I have searched the [issues](https://github.com/apache/dubbo/issues) of this repository and believe that this is not a duplicate. ### Environment * Dubbo version: 3.1.7 * Operating System version: centos 7.6.1810 * Java version: 1.8.0_212 ### Steps to reproduce this issue 1. provider为tri时获取不到metadata 2. 修改为dubbo时正常 ### Actual Behavior <!-- What actually happens? --> 报错日志 ``` 2023-03-04 10:06:23 [ Dubbo-framework-SD-address-refresh-0-thread-1:53010625 ] - [ INFO ] org.apache.dubbo.rpc.model.ModuleModel.registerInternalConsumer(ModuleModel.java:196) [DUBBO] Dynamically registering consumer model A/org.apache.dubbo.metadata.MetadataService:1.0.0 into model Dubbo Module[1.1.0], dubbo version: 3.1.7, current host: YYY 2023-03-04 10:06:26 [ Dubbo-framework-SD-address-refresh-0-thread-1:53013627 ] - [ ERROR ] [DUBBO] Failed to get app metadata for revision ***11b4a9a545f7 for type local from instance XXX:21779, dubbo version: 3.1.7, current host: YYY, error code: 1-39. This may be caused by , go to https://dubbo.apache.org/faq/1/39 to find instructions. org.apache.dubbo.rpc.RpcException: Fail to invoke remote method: getMetadataInfo, provider: tri://XXX:21779/org.apache.dubbo.metadata.MetadataService?connections=1&corethreads=2&dubbo=2.0.2&group=A&port=21779&protocol=tri&release=3.1.7&retries=0&side=provider&threadpool=cached&threads=100&timeout=5000&version=1.0.0, cause: org.apache.dubbo.rpc.StatusRpcException: UNAVAILABLE : upstream XXX:21779 is unavailable at org.apache.dubbo.rpc.protocol.AbstractInvoker.waitForResultIfSync(AbstractInvoker.java:281) at org.apache.dubbo.rpc.protocol.AbstractInvoker.invoke(AbstractInvoker.java:186) at org.apache.dubbo.rpc.listener.ListenerInvokerWrapper.invoke(ListenerInvokerWrapper.java:71) at org.apache.dubbo.rpc.proxy.InvocationUtil.invoke(InvocationUtil.java:57) at org.apache.dubbo.rpc.proxy.InvokerInvocationHandler.invoke(InvokerInvocationHandler.java:75) at org.apache.dubbo.metadata.MetadataServiceDubboProxy10.getMetadataInfo(MetadataServiceDubboProxy10.java) at org.apache.dubbo.registry.client.metadata.MetadataUtils.getRemoteMetadata(MetadataUtils.java:173) at org.apache.dubbo.registry.client.AbstractServiceDiscovery.getRemoteMetadata(AbstractServiceDiscovery.java:228) at org.apache.dubbo.registry.client.event.listener.ServiceInstancesChangedListener.lambda$doOnEvent$2(ServiceInstancesChangedListener.java:159) at java.util.Optional.orElseGet(Optional.java:267) at org.apache.dubbo.registry.client.event.listener.ServiceInstancesChangedListener.doOnEvent(ServiceInstancesChangedListener.java:159) at org.apache.dubbo.registry.client.event.listener.ServiceInstancesChangedListener.onEvent(ServiceInstancesChangedListener.java:113) at org.apache.dubbo.registry.zookeeper.ZookeeperServiceDiscoveryChangeWatcher$1.lambda$doNotify$0(ZookeeperServiceDiscoveryChangeWatcher.java:71) at java.lang.Iterable.forEach(Iterable.java:75) at org.apache.dubbo.registry.zookeeper.ZookeeperServiceDiscoveryChangeWatcher$1.doNotify(ZookeeperServiceDiscoveryChangeWatcher.java:71) at org.apache.dubbo.registry.RegistryNotifier$NotificationTask.run(RegistryNotifier.java:106) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) Caused by: java.util.concurrent.ExecutionException: org.apache.dubbo.rpc.StatusRpcException: UNAVAILABLE : upstream XXX:21779 is unavailable at java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:357) at java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1915) at org.apache.dubbo.rpc.AsyncRpcResult.get(AsyncRpcResult.java:196) at org.apache.dubbo.rpc.protocol.AbstractInvoker.waitForResultIfSync(AbstractInvoker.java:266) ... 22 more Caused by: org.apache.dubbo.rpc.StatusRpcException: UNAVAILABLE : upstream XXX:21779 is unavailable at org.apache.dubbo.rpc.TriRpcStatus.asException(TriRpcStatus.java:214) at org.apache.dubbo.rpc.protocol.tri.TripleInvoker.doInvoke(TripleInvoker.java:105) at org.apache.dubbo.rpc.protocol.AbstractInvoker.doInvokeAndReturn(AbstractInvoker.java:222) at org.apache.dubbo.rpc.protocol.AbstractInvoker.invoke(AbstractInvoker.java:183) ... 21 more ``` 调试截图 org.apache.dubbo.rpc.protocol.tri.TripleInvoker#doInvoke->org.apache.dubbo.remoting.api.Connection#isAvailable   -- 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: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
