You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
blocking or async unary call, server faults with an RpcException specifying StatusCode.OK (but obviously no payload, because it faulted)
Native client behavior:
RpcException is surfaced, with StatusCode.Internal and message "Failed to deserialize response message.", suggesting it tried to deserialize the non-payload.
Managed client behavior:
RpcException is surfaced, with StatusCode.OK and the original message/etc; it did not attempt (and fail) to deserialize a non-payload.
Repro is in here, in particular BlockingUnaryFault(scenario: FaultSuccessGoodProducer) and AsyncUnaryFault(scenario: FaultSuccessGoodProducer).
I could happily be sold that the bug here is the Google implementation, but I'm treating it as "reference" for now. Note: I'm adding a IsManagedClient check to all the tests there, so that my tests pass with the current deltas acknowledged.
Note that in both cases the deserializer is only invoked once to parse the request message; neither client implementation actually invokes the deserializer with the (non-existent) response message. So: it isn't an actual "something exploded when deserializing".
The text was updated successfully, but these errors were encountered:
I could go either way on this one, but...
Scenario:
blocking or async unary call, server faults with an
RpcException
specifyingStatusCode.OK
(but obviously no payload, because it faulted)Native client behavior:
RpcException
is surfaced, withStatusCode.Internal
and message"Failed to deserialize response message."
, suggesting it tried to deserialize the non-payload.Managed client behavior:
RpcException
is surfaced, withStatusCode.OK
and the original message/etc; it did not attempt (and fail) to deserialize a non-payload.Repro is in here, in particular
BlockingUnaryFault(scenario: FaultSuccessGoodProducer)
andAsyncUnaryFault(scenario: FaultSuccessGoodProducer)
.I could happily be sold that the bug here is the Google implementation, but I'm treating it as "reference" for now. Note: I'm adding a
IsManagedClient
check to all the tests there, so that my tests pass with the current deltas acknowledged.Note that in both cases the deserializer is only invoked once to parse the request message; neither client implementation actually invokes the deserializer with the (non-existent) response message. So: it isn't an actual "something exploded when deserializing".
The text was updated successfully, but these errors were encountered: