From 95060b2c3125c9c65897883cae1244996a6a7845 Mon Sep 17 00:00:00 2001 From: "Penn (Dapeng) Zhang" Date: Thu, 25 Mar 2021 17:35:12 -0700 Subject: [PATCH] fix StreamBufferingEncoder --- .../main/java/io/grpc/netty/StreamBufferingEncoder.java | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/netty/src/main/java/io/grpc/netty/StreamBufferingEncoder.java b/netty/src/main/java/io/grpc/netty/StreamBufferingEncoder.java index 915f460cd2e..bac0049de41 100644 --- a/netty/src/main/java/io/grpc/netty/StreamBufferingEncoder.java +++ b/netty/src/main/java/io/grpc/netty/StreamBufferingEncoder.java @@ -63,6 +63,8 @@ * drop-in decorator of {@link io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder}. *

*/ +// This is a temporary copy of {@link io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder} +// with a bug fix that is not available yet in the latest netty release. class StreamBufferingEncoder extends DecoratingHttp2ConnectionEncoder { /** @@ -156,11 +158,7 @@ public ChannelFuture writeHeaders(ChannelHandlerContext ctx, int streamId, Http2 if (closed) { return promise.setFailure(new Http2ChannelClosedException()); } - if (isExistingStream(streamId) || connection().goAwayReceived()) { - return super.writeHeaders(ctx, streamId, headers, streamDependency, weight, - exclusive, padding, endOfStream, promise); - } - if (canCreateStream()) { + if (isExistingStream(streamId) || canCreateStream()) { return super.writeHeaders(ctx, streamId, headers, streamDependency, weight, exclusive, padding, endOfStream, promise); }