In 1.3 we started allowing clients to be more aggressive. From the 1.3 release notes:
"Keepalives in Netty and OkHttp now allow sending pings without outstanding RPCs. The minimum keepalive time was also reduced from 1 minute to 10 seconds. Clients must get permission from the services they use before enabling keepalive." However, that puts servers in danger, so we also added server-side detection of over-zealous clients. In the release notes: "Netty server: now detects overly aggressive keepalives from clients, with configurable limits. Defaults to permitting keepalives every 5 minutes only while there are outstanding RPCs, but clients must not depend on this value." too_many_pings is the server saying the client is pinging too frequently. Either reduce the keepalive rate on the client-side or increase the limit on the server-side. On Mon, Jun 5, 2017 at 2:51 PM, <cr2...@gmail.com> wrote: > > Hi > > I set on a grpc stream with NettyChannel options: > keepAliveTime"(60L, TimeUnit.SECONDS}); > keepAliveTimeout{8L, TimeUnit.SECONDS}); > > At times in the code I've added sleep for 15 min. I see on Wireshark the > keep alives. > > But after a time I see : > ------------------------------------------------------------ > ------------------------------------------------------------ > ----------------- > Jun 05, 2017 5:29:53 PM io.grpc.netty.NettyClientHandler$1 > onGoAwayReceived > WARNING: Received GOAWAY with ENHANCE_YOUR_CALM. Debug data: {1} > Jun 05, 2017 5:29:53 PM io.grpc.internal.AtomicBackoff$State backoff > WARNING: Increased keepalive time nanos to 240,000,000,000 > 2017-06-05 21:29:53,073 ERROR OrdererClient:116 - Received error on > channel foo, orderer orderer.example.com, url grpc://localhost:7050, > RESOURCE_EXHAUSTED: Bandwidth exhausted > HTTP/2 error code: ENHANCE_YOUR_CALM > Received Goaway > too_many_pings > io.grpc.StatusRuntimeException: RESOURCE_EXHAUSTED: Bandwidth exhausted > HTTP/2 error code: ENHANCE_YOUR_CALM > Received Goaway > too_many_pings > at io.grpc.Status.asRuntimeException(Status.java:540) > at io.grpc.stub.ClientCalls$StreamObserverToCallListenerAd > apter.onClose(ClientCalls.java:392) > at io.grpc.internal.ClientCallImpl.closeObserver( > ClientCallImpl.java:426) > at io.grpc.internal.ClientCallImpl.access$100( > ClientCallImpl.java:76) > at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl. > close(ClientCallImpl.java:512) > at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl. > access$700(ClientCallImpl.java:429) > at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$ > 1StreamClosed.runInContext(ClientCallImpl.java:544) > at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:52) > at io.grpc.internal.SerializingExecutor.run( > SerializingExecutor.java:117) > at java.util.concurrent.ThreadPoolExecutor.runWorker( > ThreadPoolExecutor.java:1142) > at java.util.concurrent.ThreadPoolExecutor$Worker.run( > ThreadPoolExecutor.java:617) > at java.lang.Thread.run(Thread.java:745) > ------------------------------------------------------------ > ------------------------------------------------------------ > ----------------- > > But everything seem to continue to work grpc 1.3.0 > Something I can do to stop that ? Any ideas whats going on here ? > Thanks! > > > > -- > You received this message because you are subscribed to the Google Groups " > grpc.io" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to grpc-io+unsubscr...@googlegroups.com. > To post to this group, send email to grpc-io@googlegroups.com. > Visit this group at https://groups.google.com/group/grpc-io. > To view this discussion on the web visit https://groups.google.com/d/ > msgid/grpc-io/8fbd88f7-8648-471b-baab-5e2711c32fce%40googlegroups.com > <https://groups.google.com/d/msgid/grpc-io/8fbd88f7-8648-471b-baab-5e2711c32fce%40googlegroups.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "grpc.io" group. To unsubscribe from this group and stop receiving emails from it, send an email to grpc-io+unsubscr...@googlegroups.com. To post to this group, send email to grpc-io@googlegroups.com. Visit this group at https://groups.google.com/group/grpc-io. To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/CA%2B4M1oMA8txN6Wgpso2vvcp_J3rbMqeLdYXa_wQ_5GS29yBBkA%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
smime.p7s
Description: S/MIME Cryptographic Signature