Paul Rogers created DRILL-5511:
----------------------------------

             Summary: Additional UserException categories for internal errors
                 Key: DRILL-5511
                 URL: https://issues.apache.org/jira/browse/DRILL-5511
             Project: Apache Drill
          Issue Type: Improvement
    Affects Versions: 1.11.0
            Reporter: Paul Rogers
            Assignee: Paul Rogers
            Priority: Minor
             Fix For: 1.11.0


The {{UserException}} class in Drill is the way that Drill passes error 
conditions from the server to the client. {{UserException}} groups errors into 
a number of categories as defined in [the protobuf 
definitions|https://github.com/apache/drill/blob/master/protocol/src/main/protobuf/UserBitShared.proto].

As we enhance error handling in operators, it becomes clear that some errors do 
not fit into the existing categories. In particular:

* Execution errors: problems related to run-time issues where the cause is not 
known, or the error does not fit into an existing category. This might occur, 
say, if a temporary file fills, a spill file is deleted or other odd-ball cases.
* Internal error: error that indicates failure of Drill code, invariants or the 
like. Internal errors are generally not something wrong with the user's data, 
query or environment, but rather something wrong with Drill itself. For 
example, all {{IllegalStateException}}, {{AssertionError}} or 
{{IllegalArgumentException}} errors would map to an internal error.
* Unspecified error: for cases where Drill code caches an exception from a 
deeper layer, but we don't know enough about the exception to render a useful 
categorization. Most often used in cases of plugins that don't do adequate 
error handing themselves.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to