You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@arrow.apache.org by "David Li (Jira)" <ji...@apache.org> on 2020/05/21 12:20:00 UTC

[jira] [Created] (ARROW-8879) [FlightRPC][Java] FlightStream should unwrap ExecutionExceptions

David Li created ARROW-8879:
-------------------------------

             Summary: [FlightRPC][Java] FlightStream should unwrap ExecutionExceptions
                 Key: ARROW-8879
                 URL: https://issues.apache.org/jira/browse/ARROW-8879
             Project: Apache Arrow
          Issue Type: Improvement
          Components: FlightRPC, Java
    Affects Versions: 0.17.1
            Reporter: David Li
            Assignee: David Li


Currently FlightStream bubbles a lot of exceptions as RuntimeException or ExecutionException, or just wraps them with CallStatus.INTERNAL. For RuntimeException, we should always check if it's a gRPC StatusRuntimeException and convert to the equivalent Flight exception; for ExecutionException, we should check if the _cause_ is a gRPC exception and convert.

Example: on master, FlightStream#getDescriptor reports all errors as CallStatus.INTERNAL, but we should inspect ExecutionException#getCause instead.

This is needed so that errors get properly reported, e.g. if a service sends a PERMISSION_DENIED error, the client should get that and not a RuntimeException, ExecutionException, or INTERNAL error.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)