{"action":"created","issue":{"url":"https://api.github.com/repos/grpc/grpc-java/issues/5032","repository_url":"https://api.github.com/repos/grpc/grpc-java","labels_url":"https://api.github.com/repos/grpc/grpc-java/issues/5032/labels{/name}","comments_url":"https://api.github.com/repos/grpc/grpc-java/issues/5032/comments","events_url":"https://api.github.com/repos/grpc/grpc-java/issues/5032/events","html_url":"https://github.com/grpc/grpc-java/issues/5032","id":377711143,"node_id":"MDU6SXNzdWUzNzc3MTExNDM=","number":5032,"title":"Using DNS Service Discovery returns UNAVAILABLE: NameResolver returned an empty list","user":{"login":"yutachaos","id":18604471,"node_id":"MDQ6VXNlcjE4NjA0NDcx","avatar_url":"https://avatars0.githubusercontent.com/u/18604471?v=4","gravatar_id":"","url":"https://api.github.com/users/yutachaos","html_url":"https://github.com/yutachaos","followers_url":"https://api.github.com/users/yutachaos/followers","following_url":"https://api.github.com/users/yutachaos/following{/other_user}","gists_url":"https://api.github.com/users/yutachaos/gists{/gist_id}","starred_url":"https://api.github.com/users/yutachaos/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yutachaos/subscriptions","organizations_url":"https://api.github.com/users/yutachaos/orgs","repos_url":"https://api.github.com/users/yutachaos/repos","events_url":"https://api.github.com/users/yutachaos/events{/privacy}","received_events_url":"https://api.github.com/users/yutachaos/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":5,"created_at":"2018-11-06T06:39:24Z","updated_at":"2018-11-16T17:59:26Z","closed_at":null,"author_association":"NONE","body":"\r\n### What version of gRPC are you using?\r\n- 1.15\r\n\r\n### What did you expect to see?\r\n\r\n- One of the scenarios is as follows:\r\n\t- Using envoyproxy as Load balancer.\r\n\t- Using AWS Service Discovery as DNS Service Discovery\r\n\t- DNS Service Discovery server that serves as an A record pointing to that load balancer\r\n\t- One \"backend\", which the load balancer points to\r\n\t- Such a flow\r\n\t\t- gRPC client server→ envoy proxy → AWS Service Discovery → gRPC api server\r\n\r\n- The gRPC client server will return `UNAVAILABLE: NameResolver returned an empty list` when the ip of envoy is changed.\r\n\r\n- It seems that gRPC client server has done DNS cache and it is not updated to new ip. \r\n\r\n#### stacktrace\r\n\r\n```\r\nio.grpc.StatusRuntimeException: UNAVAILABLE: NameResolver returned an empty list\r\n    at io.grpc.Status.asRuntimeException(Status.java:526)\r\n    at io.grpc.stub.ClientCalls$UnaryStreamToFuture.onClose(ClientCalls.java:482)\r\n    at io.grpc.PartialForwardingClientCallListener.onClose(PartialForwardingClientCallListener.java:39)\r\n    at io.grpc.ForwardingClientCallListener.onClose(ForwardingClientCallListener.java:23)\r\n    at io.grpc.ForwardingClientCallListener$SimpleForwardingClientCallListener.onClose(ForwardingClientCallListener.java:40)\r\n    at io.grpc.internal.CensusStatsModule$StatsClientInterceptor$1$1.onClose(CensusStatsModule.java:678)\r\n    at io.grpc.PartialForwardingClientCallListener.onClose(PartialForwardingClientCallListener.java:39)\r\n    at io.grpc.ForwardingClientCallListener.onClose(ForwardingClientCallListener.java:23)\r\n    at io.grpc.ForwardingClientCallListener$SimpleForwardingClientCallListener.onClose(ForwardingClientCallListener.java:40)\r\n    at io.grpc.internal.CensusTracingModule$TracingClientInterceptor$1$1.onClose(CensusTracingModule.java:403)\r\n    at io.grpc.internal.ClientCallImpl.closeObserver(ClientCallImpl.java:459)\r\n    at io.grpc.internal.ClientCallImpl.access$300(ClientCallImpl.java:63)\r\n    at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl.close(ClientCallImpl.java:546)\r\n    at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl.access$600(ClientCallImpl.java:467)\r\n    at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInContext(ClientCallImpl.java:584)\r\n    at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37)\r\n    at io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:123)\r\n    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)\r\n    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)\r\n    at java.lang.Thread.run(Thread.java:745)\r\n```"},"comment":{"url":"https://api.github.com/repos/grpc/grpc-java/issues/comments/439475566","html_url":"https://github.com/grpc/grpc-java/issues/5032#issuecomment-439475566","issue_url":"https://api.github.com/repos/grpc/grpc-java/issues/5032","id":439475566,"node_id":"MDEyOklzc3VlQ29tbWVudDQzOTQ3NTU2Ng==","user":{"login":"ejona86","id":2811396,"node_id":"MDQ6VXNlcjI4MTEzOTY=","avatar_url":"https://avatars2.githubusercontent.com/u/2811396?v=4","gravatar_id":"","url":"https://api.github.com/users/ejona86","html_url":"https://github.com/ejona86","followers_url":"https://api.github.com/users/ejona86/followers","following_url":"https://api.github.com/users/ejona86/following{/other_user}","gists_url":"https://api.github.com/users/ejona86/gists{/gist_id}","starred_url":"https://api.github.com/users/ejona86/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ejona86/subscriptions","organizations_url":"https://api.github.com/users/ejona86/orgs","repos_url":"https://api.github.com/users/ejona86/repos","events_url":"https://api.github.com/users/ejona86/events{/privacy}","received_events_url":"https://api.github.com/users/ejona86/received_events","type":"User","site_admin":false},"created_at":"2018-11-16T17:59:26Z","updated_at":"2018-11-16T17:59:26Z","author_association":"MEMBER","body":"@yutachaos, the error `NameResolver returned an empty list` is a bug that hides the real error. Have you been able to try out 1.16 to see what the real error is? Was the problem the missing INTERNET permission?"}}
{"actor":{"display_login":"ejona86"}}