hadoop-pig-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ashutosh Chauhan (JIRA)" <j...@apache.org>
Subject [jira] Commented: (PIG-1531) Pig gobbles up error messages
Date Wed, 25 Aug 2010 18:56:19 GMT

    [ https://issues.apache.org/jira/browse/PIG-1531?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12902576#action_12902576
] 

Ashutosh Chauhan commented on PIG-1531:
---------------------------------------

* In addition to error Msg, you also need to set error code on the exception you are throwing.
* Since you are catching exceptions thrown by user code (StoreFunc Interface) it is not safe
to assume that e.getMessage() will be non-null or non-empty string. This will result in NPE.
You need to check for it and provide a generic error Msg in those cases.
* Generic error msg should also contain output location String. Since if user didnt provide
it, that wont get printed. So, you can reword the message as "Output location validation failed
for: <location>. More Information to follow:" 
* Since, PigException extends from IOException. The IOException you are catching can also
be a PigException, you need to test if it is and then set the message and error code.
* In case of non-existent input location I am still seeing the generic message "ERROR 2997:
Unable to recreate exception from backend error: org.apache.pig.backend.executionengine.ExecException:
ERROR 2118: Unable to create input splits for: file:///Users/chauhana/workspace/pig-1531/a"
Though the full stack trace is printed at the end which contains the underlying error String.
Its more confusing because now there are three different error messages amid a java stack
trace.
* This warrants a testcase for regression purposes. (Infact error reporting behavior already
changed since the time I opened this bug.)

> Pig gobbles up error messages
> -----------------------------
>
>                 Key: PIG-1531
>                 URL: https://issues.apache.org/jira/browse/PIG-1531
>             Project: Pig
>          Issue Type: Bug
>    Affects Versions: 0.7.0
>            Reporter: Ashutosh Chauhan
>            Assignee: niraj rai
>             Fix For: 0.8.0
>
>         Attachments: PIG_1531.patch
>
>
> Consider the following. I have my own Storer implementing StoreFunc and I am throwing
FrontEndException (and other Exceptions derived from PigException) in its various methods.
I expect those error messages to be shown in error scenarios. Instead Pig gobbles up my error
messages and shows its own generic error message like: 
> {code}
> 010-07-31 14:14:25,414 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 2116: Unexpected
error. Could not validate the output specification for: default.partitoned
> Details at logfile: /Users/ashutosh/workspace/pig/pig_1280610650690.log
> {code}
> Instead I expect it to display my error messages which it stores away in that log file.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message