[
https://issues.apache.org/jira/browse/ARROW-16592?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Yibo Cai resolved ARROW-16592.
------------------------------
Fix Version/s: 9.0.0
Resolution: Fixed
Issue resolved by pull request 13191
[https://github.com/apache/arrow/pull/13191]
> [FlightRPC][Python] Regression in DoPut error handling
> ------------------------------------------------------
>
> Key: ARROW-16592
> URL: https://issues.apache.org/jira/browse/ARROW-16592
> Project: Apache Arrow
> Issue Type: Bug
> Components: FlightRPC, Python
> Reporter: Lubo Slivka
> Assignee: David Li
> Priority: Major
> Labels: pull-request-available
> Fix For: 9.0.0
>
> Time Spent: 50m
> Remaining Estimate: 0h
>
> In PyArrow 8.0.0, any error raised while handling DoPut on the server results
> in FlightInternalError on the client.
> In PyArrow 7.0.0, errors raised while handling DoPut are propagated/converted
> to non-internal errors.
> —
> Example: on 7.0.0, raising FlightCancelledError while handling DoPut on the
> server would propagate that error including extra_info all the way to the
> FlightClient. This is not the case anymore on 8.0.0.
> The FlightInternalError contains extra detail that is derived from the
> cancelled error though:
> {code:java}
> /arrow/cpp/src/arrow/flight/client.cc:363: Close() failed: IOError: <error
> message from FlightError is here>. Detail: Cancelled. gRPC client debug
> context: {"created":"@1652777650.446052211","description":"Error received
> from peer
> ipv4:127.0.0.1:16001","file":"/opt/vcpkg/buildtrees/grpc/src/85a295989c-6cf7bf442d.clean/src/core/lib/surface/call.cc","file_line":903,"grpc_message":"<error
> message from FlightError is here>. Detail: Cancelled","grpc_status":1}.
> Client context: OK. Detail: Cancelled
> {code}
> Note: skimming through the code, it seems this problem is not unique to
> PyArrow.
--
This message was sent by Atlassian Jira
(v8.20.7#820007)