-
Notifications
You must be signed in to change notification settings - Fork 4.6k
Description
Hi, I'm testing the compatibility of helloworld example between https://github.com/tower-rs/tower-grpc and https://github.com/grpc/grpc-go.
I found that the Golang client sent a RST TCP flag before it closing connection, however, the Rust client sent a FIN TCP flag. And, the Rust server think a RST flag is not proper.
This issue is born from this tower-rs/tower-grpc#187.
What version of gRPC are you using?
const Version = "1.22.0-dev"
What version of Go are you using (go version)?
$ go version
go version go1.12.6 windows/amd64
What operating system (Linux, Windows, …) and version?
Windows 10
What did you do?
If possible, provide a recipe for reproducing the error.
Here is the Wireshark dump of Golang client: https://pastebin.com/XxLkUXQw
-
got ConnectionReset error: https://github.com/tower-rs/tower-grpc/blob/master/tower-grpc-examples/src/helloworld/server.rs + https://github.com/grpc/grpc-go/tree/master/examples/helloworld/greeter_client
-
no this kind error: https://github.com/tower-rs/tower-grpc/blob/master/tower-grpc-examples/src/helloworld/server.rs + https://github.com/tower-rs/tower-grpc/blob/master/tower-grpc-examples/src/helloworld/client.rs
-
got the same kind TCP flag
[RST, ACK]: https://github.com/grpc/grpc-go/tree/master/examples/helloworld/greeter_server + https://github.com/grpc/grpc-go/tree/master/examples/helloworld/greeter_client
What did you expect to see?
It should be a `FIN` flag instead of `RST` flag when TCP is closing, in my opinion
What did you see instead?
A `RST` flag was sent from grpc-go client
