I haven't seen evidence of data being "dropped". The gRPC server is not 
sending a status as shown by this log

I0124 01:55:13.735187808    1072 call.cc:1508]               ops[0]: 
SEND_STATUS_FROM_SERVER status=0 details=(nil)



The client saying that it did not receive a status is actually what the 
server sent. Why the server is sending nil status is what the next step to 
debug should be. To be clear, I am not too familiar with the gRPC python 
internals but I am speaking from what I see in the gRPC core layer (over 
which gRPC python operates). So in this case, I would first verify what the 
application server is actually sending and how that's getting converted to 
a nil status.

On Monday, January 28, 2019 at 12:46:56 PM UTC-8, robert engels wrote:
>
> To clarify, wouldn’t that mean that Apache HTTP2 is VERY broken - seems 
> unlikely.
>
> On Jan 28, 2019, at 2:44 PM, robert engels <[email protected] 
> <javascript:>> wrote:
>
> I thin the chance that Apache has a bug of this sort at this time is 
> pretty remote… I would probably look elsewhere.
>
> On Jan 28, 2019, at 2:18 PM, rbellevi via grpc.io <[email protected] 
> <javascript:>> wrote:
>
> Sorry for the delay. Looking at both logs, it seems pretty clear that 
> Apache is dropping some data:
>
> Server:
>
> I0124 01:55:13.735421963    1072 chttp2_transport.cc:1355]   HTTP:1:HDR:SVR: 
> :status: 200
> I0124 01:55:13.735426447    1072 chttp2_transport.cc:1355]   HTTP:1:HDR:SVR: 
> content-type: application/grpc
> I0124 01:55:13.735430871    1072 chttp2_transport.cc:1355]   HTTP:1:HDR:SVR: 
> grpc-accept-encoding: identity,deflate,gzip
> I0124 01:55:13.735435318    1072 chttp2_transport.cc:1355]   HTTP:1:HDR:SVR: 
> accept-encoding: identity,gzip
> I0124 01:55:13.735439684    1072 chttp2_transport.cc:1355]   HTTP:1:TRL:SVR: 
> grpc-status: 0
> I0124 01:55:13.735443949    1072 chttp2_transport.cc:1355]   HTTP:1:TRL:SVR: 
> grpc-message:
>
>
> Client:
>
>
> D0123 20:55:13.778892713   20815 call.cc:1054]               Received 
> trailing metadata with no error and no status
> D0123 20:55:13.778896699   20815 call.cc:719]                set_final_status 
> CLI
> D0123 20:55:13.778904381   20815 call.cc:720]                
> {"created":"@1548294913.778895884","description":"No status 
> received","file":"src/core/lib/surface/call.cc","file_line":1058,"grpc_status":2}
>
>
> On the server side, you can see the gRPC server clearly setting both headers 
> and trailers. But on the client side, we receive empty trailers. They should 
> have contained "grpc-status" and "grpc-metadata". This looks like a bug 
> within Apache to me. I would report it to them.
>
>
> On Thursday, January 24, 2019 at 11:51:55 AM UTC-8, [email protected] 
> wrote:
>>
>>
>> Sorry about that, updated.
>>
>> Server log:  
>> https://drive.google.com/open?id=12g5ixgumXZcy9zoDutujRclEu_NcaU-P
>> Client log : 
>> https://drive.google.com/file/d/1sQ1Dw0Om1qliKLNRBuN7xK7Dww3C5rNh
>>
>> On Thursday, 24 January 2019 12:22:29 UTC-5, [email protected] wrote:
>>>
>>> I'm not seeing anything out of the ordinary on the server side, but it 
>>> looks like you've linked to the server logs twice. Can you please include a 
>>> link to the client logs as well?
>>>
>>> On Wednesday, January 23, 2019 at 6:11:21 PM UTC-8, [email protected] 
>>> wrote:
>>>>
>>>> Server log:  
>>>> https://drive.google.com/open?id=12g5ixgumXZcy9zoDutujRclEu_NcaU-P
>>>> Client log : 
>>>> https://drive.google.com/open?id=12g5ixgumXZcy9zoDutujRclEu_NcaU-P
>>>>
>>>> On Wednesday, 23 January 2019 14:42:17 UTC-5, [email protected] wrote:
>>>>>
>>>>> Can you run your client with the following environment variables set 
>>>>> so we can get a better idea of what's going on?
>>>>>
>>>>> GRPC_VERBOSITY=debug
>>>>> GRPC_TRACE=all,-timer,-timer_check
>>>>>
>>>>>
>>>>> On Wednesday, January 23, 2019 at 8:01:01 AM UTC-8, [email protected] 
>>>>> wrote:
>>>>>>
>>>>>> In my system the grpc server is running a secure server behind port 
>>>>>> 80. The apache server takes request at port 443 and proxies it to port 
>>>>>> 80. 
>>>>>> I could see that the server is getting the request and processing it. 
>>>>>> But 
>>>>>> after its done, the client errors out with the following:
>>>>>>
>>>>>> Traceback (most recent call last):
>>>>>>   File "grpc_secure_client.py", line 40, in <module>
>>>>>>     response = stub. Process(request)
>>>>>>   File 
>>>>>> "/home/harora/.pyenv/versions/py-3.5.0-grpc/lib/python3.5/site-packages/grpc/_channel.py",
>>>>>>  
>>>>>> line 550, in __call__
>>>>>>     return _end_unary_response_blocking(state, call, False, None)
>>>>>>   File 
>>>>>> "/home/harora/.pyenv/versions/py-3.5.0-grpc/lib/python3.5/site-packages/grpc/_channel.py",
>>>>>>  
>>>>>> line 467, in _end_unary_response_blocking
>>>>>>     raise _Rendezvous(state, None, None, deadline)
>>>>>> grpc._channel._Rendezvous: <_Rendezvous of RPC that terminated with:
>>>>>>         status = StatusCode.UNKNOWN
>>>>>>         details = "No status received"
>>>>>>         debug_error_string = 
>>>>>> "{"created":"@1548225523.353383280","description":"No status 
>>>>>> received","file":"src/core/lib/surface/call.cc
>>>>>> ","file_line":1058,"grpc_status":2}"
>>>>>> >
>>>>>>
>>>>>>
>>>>>> The apache logs shows the following line:
>>>>>>  -- 23/Jan/2019:15:59:08 +0000] "POST /service/Process HTTP/2.0" 200 
>>>>>> 7 "-" "grpc-python/1.18.0 grpc-c/7.0.0 (manylinux; chttp2; goose)" "-" 
>>>>>> 18539
>>>>>>
>>>>>>
>>>>>> Any help to debug this would be really appreciated.
>>>>>>
>>>>>> For what its worth, i am using python-grpcio compiled with openssl, 
>>>>>> Apache has h2 enabled and is listening at port 443.
>>>>>>
>>>>>>
>>>>>>
> -- 
> 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 [email protected] <javascript:>.
> To post to this group, send email to [email protected] <javascript:>
> .
> 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/acec4620-5731-49e7-ae8f-2835ae024411%40googlegroups.com
>  
> <https://groups.google.com/d/msgid/grpc-io/acec4620-5731-49e7-ae8f-2835ae024411%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 [email protected].
To post to this group, send email to [email protected].
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/f7ef2a7c-995a-4f2e-b055-2c87506cdd8d%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to