Closed severin-lemaignan closed 6 years ago
For the sake of completeness, the error does not occur if I use go's greeter_client
example.
GRPC output when go's greeter_client
connects:
D1225 21:33:43.237934433 23448 chttp2_transport.cc:845] W:0x7fa4e4001960 SERVER state IDLE -> WRITING [TRANSPORT_FLOW_CONTROL]
D1225 21:33:43.237959744 23448 chttp2_transport.cc:845] W:0x7fa4e4001960 SERVER state WRITING -> WRITING+MORE [INITIAL_WRITE]
D1225 21:33:43.237997342 23448 writing.cc:104] SERVER: Ping sent [0x7fa4e4005860]: 0/0
D1225 21:33:43.238007736 23448 chttp2_transport.cc:845] W:0x7fa4e4001960 SERVER state WRITING+MORE -> WRITING [begin write in current thread]
D1225 21:33:43.238059872 23448 chttp2_transport.cc:2599] ipv4:127.0.0.1:50778: Start BDP ping err="No Error"
D1225 21:33:43.238068590 23448 chttp2_transport.cc:845] W:0x7fa4e4001960 SERVER state WRITING -> IDLE [finish writing]
I1225 21:33:43.238328820 23448 parsing.cc:648] parsing initial_metadata
D1225 21:33:43.238343697 23448 hpack_parser.cc:663] Decode: ':method: POST', elem_interned=1 [3], k_interned=1, v_interned=1
I1225 21:33:43.238349915 23448 parsing.cc:424] HTTP:1:HDR:SVR: :method: 50 4f 53 54 'POST'
D1225 21:33:43.238357188 23448 hpack_parser.cc:663] Decode: ':scheme: http', elem_interned=1 [3], k_interned=1, v_interned=1
I1225 21:33:43.238365389 23448 parsing.cc:424] HTTP:1:HDR:SVR: :scheme: 68 74 74 70 'http'
D1225 21:33:43.238382708 23448 hpack_parser.cc:663] Decode: ':path: /helloworld.Greeter/SayHello', elem_interned=1 [1], k_interned=1, v_interned=1
I1225 21:33:43.238395705 23448 parsing.cc:424] HTTP:1:HDR:SVR: :path: 2f 68 65 6c 6c 6f 77 6f 72 6c 64 2e 47 72 65 65 74 65 72 2f 53 61 79 48 65 6c 6c 6f '/helloworld.Greeter/SayHello'
D1225 21:33:43.238409113 23448 hpack_parser.cc:663] Decode: ':authority: localhost:50051', elem_interned=1 [1], k_interned=1, v_interned=1
I1225 21:33:43.238419345 23448 parsing.cc:424] HTTP:1:HDR:SVR: :authority: 6c 6f 63 61 6c 68 6f 73 74 3a 35 30 30 35 31 'localhost:50051'
D1225 21:33:43.238430603 23448 hpack_parser.cc:663] Decode: 'content-type: application/grpc', elem_interned=1 [3], k_interned=1, v_interned=1
I1225 21:33:43.238441229 23448 parsing.cc:424] HTTP:1:HDR:SVR: content-type: 61 70 70 6c 69 63 61 74 69 6f 6e 2f 67 72 70 63 'application/grpc'
D1225 21:33:43.238453511 23448 hpack_parser.cc:663] Decode: 'user-agent: grpc-go/1.9.0-dev', elem_interned=1 [1], k_interned=1, v_interned=1
I1225 21:33:43.238464252 23448 parsing.cc:424] HTTP:1:HDR:SVR: user-agent: 67 72 70 63 2d 67 6f 2f 31 2e 39 2e 30 2d 64 65 76 'grpc-go/1.9.0-dev'
D1225 21:33:43.238476963 23448 hpack_parser.cc:663] Decode: 'te: trailers', elem_interned=1 [3], k_interned=1, v_interned=1
I1225 21:33:43.238487327 23448 parsing.cc:424] HTTP:1:HDR:SVR: te: 74 72 61 69 6c 65 72 73 'trailers'
D1225 21:33:43.238504834 23448 chttp2_transport.cc:1692] perform_stream_op[s=0x7fa4e400d230]: RECV_INITIAL_METADATA
D1225 21:33:43.238518002 23448 chttp2_transport.cc:2613] ipv4:127.0.0.1:50778: Complete BDP ping err="No Error"
D1225 21:33:43.238536346 23448 chttp2_transport.cc:1402] perform_stream_op_locked: RECV_INITIAL_METADATA; on_complete = 0x7fa4e400d0f0
D1225 21:33:43.238549109 23448 chttp2_transport.cc:1244] complete_closure_step: t=0x7fa4e4001960 0x7fa4e400d0f0 refs=0 flags=0x0000 desc=op->on_complete err="No Error" write_state=IDLE
D1225 21:33:43.238706203 23448 chttp2_transport.cc:1692] perform_stream_op[s=0x7fa4e400d230]: RECV_TRAILING_METADATA COLLECT_STATS:0x7fa4e400c5e8
D1225 21:33:43.238718321 23448 chttp2_transport.cc:1402] perform_stream_op_locked: RECV_TRAILING_METADATA COLLECT_STATS:0x7fa4e400c5e8; on_complete = 0x7fa4e400d170
D1225 21:33:43.238730437 23448 chttp2_transport.cc:1244] complete_closure_step: t=0x7fa4e4001960 0x7fa4e400d170 refs=1 flags=0x0001 desc=op->on_complete err="No Error" write_state=IDLE
D1225 21:33:43.239085552 23488 chttp2_transport.cc:1692] perform_stream_op[s=0x7fa4e400d230]: RECV_MESSAGE
D1225 21:33:43.239110112 23488 chttp2_transport.cc:1402] perform_stream_op_locked: RECV_MESSAGE; on_complete = 0x7fa4e400d130
D1225 21:33:43.239123962 23488 chttp2_transport.cc:1244] complete_closure_step: t=0x7fa4e4001960 0x7fa4e400d130 refs=0 flags=0x0000 desc=op->on_complete err="No Error" write_state=IDLE
D1225 21:33:43.239353960 23488 chttp2_transport.cc:1692] perform_stream_op[s=0x7fa4e400d230]: SEND_INITIAL_METADATA{key=3a 73 74 61 74 75 73 ':status' value=32 30 30 '200', key=63 6f 6e 74 65 6e 74 2d 74 79 70 65 'content-type' value=61 70 70 6c 69 63 61 74 69 6f 6e 2f 67 72 70 63 'application/grpc', key=67 72 70 63 2d 61 63 63 65 70 74 2d 65 6e 63 6f 64 69 6e 67 'grpc-accept-encoding' value=69 64 65 6e 74 69 74 79 2c 64 65 66 6c 61 74 65 2c 67 7a 69 70 'identity,deflate,gzip', key=61 63 63 65 70 74 2d 65 6e 63 6f 64 69 6e 67 'accept-encoding' value=69 64 65 6e 74 69 74 79 2c 67 7a 69 70 'identity,gzip'} SEND_MESSAGE:flags=0x00000000:len=14 SEND_TRAILING_METADATA{key=67 72 70 63 2d 73 74 61 74 75 73 'grpc-status' value=30 '0', key=67 72 70 63 2d 6d 65 73 73 61 67 65 'grpc-message' value=}
D1225 21:33:43.239386190 23488 chttp2_transport.cc:1402] perform_stream_op_locked: SEND_INITIAL_METADATA{key=3a 73 74 61 74 75 73 ':status' value=32 30 30 '200', key=63 6f 6e 74 65 6e 74 2d 74 79 70 65 'content-type' value=61 70 70 6c 69 63 61 74 69 6f 6e 2f 67 72 70 63 'application/grpc', key=67 72 70 63 2d 61 63 63 65 70 74 2d 65 6e 63 6f 64 69 6e 67 'grpc-accept-encoding' value=69 64 65 6e 74 69 74 79 2c 64 65 66 6c 61 74 65 2c 67 7a 69 70 'identity,deflate,gzip', key=61 63 63 65 70 74 2d 65 6e 63 6f 64 69 6e 67 'accept-encoding' value=69 64 65 6e 74 69 74 79 2c 67 7a 69 70 'identity,gzip'} SEND_MESSAGE:flags=0x00000000:len=14 SEND_TRAILING_METADATA{key=67 72 70 63 2d 73 74 61 74 75 73 'grpc-status' value=30 '0', key=67 72 70 63 2d 6d 65 73 73 61 67 65 'grpc-message' value=}; on_complete = 0x7fa4e400d030
I1225 21:33:43.239397692 23488 chttp2_transport.cc:1381] HTTP:1:HDR:SVR: :status: 200
I1225 21:33:43.239406310 23488 chttp2_transport.cc:1381] HTTP:1:HDR:SVR: content-type: application/grpc
I1225 21:33:43.239413755 23488 chttp2_transport.cc:1381] HTTP:1:HDR:SVR: grpc-accept-encoding: identity,deflate,gzip
I1225 21:33:43.239421812 23488 chttp2_transport.cc:1381] HTTP:1:HDR:SVR: accept-encoding: identity,gzip
I1225 21:33:43.239429948 23488 chttp2_transport.cc:1381] HTTP:1:TRL:SVR: grpc-status: 0
I1225 21:33:43.239437503 23488 chttp2_transport.cc:1381] HTTP:1:TRL:SVR: grpc-message:
D1225 21:33:43.239445613 23488 stream_lists.cc:123] 0x7fa4e4001960[1][svr]: add to writable
D1225 21:33:43.239453126 23488 chttp2_transport.cc:845] W:0x7fa4e4001960 SERVER state IDLE -> WRITING [SEND_INITIAL_METADATA]
D1225 21:33:43.239462590 23488 chttp2_transport.cc:845] W:0x7fa4e4001960 SERVER state WRITING -> WRITING+MORE [SEND_MESSAGE]
D1225 21:33:43.239472920 23488 chttp2_transport.cc:1244] complete_closure_step: t=0x7fa4e4001960 0x7fa4e400d030 refs=3 flags=0x0002 desc=op->on_complete err="No Error" write_state=WRITING+MORE
D1225 21:33:43.239481828 23488 stream_lists.cc:69] 0x7fa4e4001960[1][svr]: pop from writable
D1225 21:33:43.239488746 23488 writing.cc:399] W:0x7fa4e4001960 SERVER[1] im-(sent,send)=(0,1) announce=0
D1225 21:33:43.239497421 23488 hpack_encoder.cc:485] Encode: ':status: 200', elem_interned=1 [3], k_interned=1, v_interned=1
D1225 21:33:43.239508760 23488 hpack_encoder.cc:485] Encode: 'content-type: application/grpc', elem_interned=1 [3], k_interned=1, v_interned=1
D1225 21:33:43.239518518 23488 hpack_encoder.cc:485] Encode: 'grpc-accept-encoding: identity,deflate,gzip', elem_interned=1 [3], k_interned=1, v_interned=1
D1225 21:33:43.239527898 23488 hpack_encoder.cc:485] Encode: 'accept-encoding: identity,gzip', elem_interned=1 [3], k_interned=1, v_interned=1
D1225 21:33:43.239537281 23488 chttp2_transport.cc:1244] complete_closure_step: t=0x7fa4e4001960 0x7fa4e400d030 refs=2 flags=0x0002 desc=send_initial_metadata_finished err="No Error" write_state=WRITING+MORE
D1225 21:33:43.239566350 23488 chttp2_transport.cc:1244] complete_closure_step: t=0x7fa4e4001960 0x7fa4e400d030 refs=1 flags=0x0002 desc=finish_write_cb err="No Error" write_state=WRITING+MORE
I1225 21:33:43.239573108 23488 writing.cc:507] sending trailing_metadata
D1225 21:33:43.239581106 23488 hpack_encoder.cc:485] Encode: 'grpc-status: 0', elem_interned=1 [3], k_interned=1, v_interned=1
D1225 21:33:43.239590486 23488 hpack_encoder.cc:485] Encode: 'grpc-message: ', elem_interned=0 [2], k_interned=1, v_interned=0
D1225 21:33:43.239600376 23488 chttp2_transport.cc:1244] complete_closure_step: t=0x7fa4e4001960 0x7fa4e400d030 refs=0 flags=0x0002 desc=send_trailing_metadata_finished err="No Error" write_state=WRITING+MORE
D1225 21:33:43.239610554 23488 chttp2_transport.cc:1244] complete_closure_step: t=0x7fa4e4001960 0x7fa4e400d170 refs=0 flags=0x0001 desc=recv_trailing_metadata_finished err="No Error" write_state=WRITING+MORE
D1225 21:33:43.239618402 23488 stream_lists.cc:123] 0x7fa4e4001960[1][svr]: add to writing
D1225 21:33:43.239626184 23488 chttp2_transport.cc:845] W:0x7fa4e4001960 SERVER state WRITING+MORE -> WRITING [begin write in current thread]
D1225 21:33:43.239680377 23488 chttp2_transport.cc:845] W:0x7fa4e4001960 SERVER state WRITING -> IDLE [finish writing]
D1225 21:33:43.239692532 23488 stream_lists.cc:69] 0x7fa4e4001960[1][svr]: pop from writing
D1225 21:33:43.239857622 23448 chttp2_transport.cc:845] W:0x7fa4e4001960 SERVER state IDLE -> WRITING [PING_RESPONSE]
D1225 21:33:43.239874732 23448 chttp2_transport.cc:845] W:0x7fa4e4001960 SERVER state WRITING -> WRITING [begin write in current thread]
D1225 21:33:43.239912833 23448 chttp2_transport.cc:845] W:0x7fa4e4001960 SERVER state WRITING -> IDLE [finish writing]
D1225 21:33:43.240359272 23448 chttp2_transport.cc:2788] set connectivity_state=4
While the greeter example works well with both rust greeter clients & servers, or with a mix of go and rust clients & servers), I hit an 'InternalError' when I try to to use the Google-provided Python greeter server.
Python server output obtained with
export GRPC_VERBOSITY=DEBUG
andexport GRPC_TRACE=http
:Steps to reproduce:
greeter_server.py
example provided with GRPC, as indicated here https://grpc.io/docs/quickstart/python.htmlgreeter_client
. It should immediately returns after printingErr(Http(CodeError(InternalError)))