https://github.com/grpc/grpc/blob/master/doc/PROTOCOL-HTTP2.md#requests
mentions EOS which is described as

"For requests, EOS (end-of-stream) is indicated by the presence of the
END_STREAM flag on the last received DATA frame. In scenarios where the
Request stream needs to be closed but no data remains to be sent
implementations MUST send an empty DATA frame with this flag set."


On Sun, May 30, 2021 at 7:18 AM Piotr Morgwai Kotarbinski <morg...@gmail.com>
wrote:

> I've noticed that in case of the java client code, calling
> `requestObserver.onCompleted()` results in a call to `
> io.netty.handler.codec.http2.DefaultHttp2FrameWriter.writeData(...)
> <https://github.com/netty/netty/blob/18e92304a700c1b3664f5a3cf24ee3ed58bafbdd/codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2FrameWriter.java#L136>`
> with `endStream` param set to `true` in case of netty, and in case of
> okHttp in a call to `io.grpc.okhttp.internal.framed.Http2.Writer.data()
> <https://github.com/grpc/grpc-java/blob/d4e90a78fdb6af6579364c4b622edbfad9ebf37f/okhttp/third_party/okhttp/main/java/io/grpc/okhttp/internal/framed/Http2.java#L493>`
> with `outFinished` param set to `true`. In both cases this results in
> `END_STREAM` flag to be set, so it seems my guess was correct. However some
> confirmation from someone more familiar with the protocol internals would
> be welcomed :)
>
> Thanks!
>
> On Sunday, May 30, 2021 at 2:26:51 PM UTC+7 Piotr Morgwai Kotarbinski
> wrote:
>
>> Hi all,
>> I was reading the protocol overview here
>> https://github.com/grpc/grpc/blob/master/CONCEPTS.md#abstract-grpc-protocol
>> One thing that is unclear to me is how a streaming client signals end of
>> its stream to a server (so called 'client half-closing'). The abstract part
>> says nothing about it. My only guess that in case of HTTP/2 implementation
>> clients basically close their input stream, but not sure about it. Could
>> someone with a deep knowledge of the protocol clarify this please?
>>
>> 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 view this discussion on the web visit
> https://groups.google.com/d/msgid/grpc-io/87e3fc86-f3c4-4c5a-8be7-e0b773b078d1n%40googlegroups.com
> <https://groups.google.com/d/msgid/grpc-io/87e3fc86-f3c4-4c5a-8be7-e0b773b078d1n%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/grpc-io/CA%2BPad6jo67dbE4Px%2BoCHo1BniZ4bwm_2%3DK7Bwo-pOXNg0G9fFA%40mail.gmail.com.

Reply via email to