Cheolsoo Park created PIG-3746:
----------------------------------

             Summary: NPE is thrown if Pig fails before PigStats is intialized
                 Key: PIG-3746
                 URL: https://issues.apache.org/jira/browse/PIG-3746
             Project: Pig
          Issue Type: Bug
            Reporter: Cheolsoo Park
            Assignee: Cheolsoo Park
             Fix For: 0.13.0


This is a regression of PIG-3525 where I moved the initialization of PigStats 
into the PigServer constructor. The problem is that if Pig fails even before 
PigServer is created, PigStats remains null resulting in NPE in PigStatsUtil.
{code:title=PigStatsUtil}
    public static void setErrorMessage(String msg) {
        PigStats.get().setErrorMessage(msg); //---> PigStats.get() returns null
    }
    public static void setErrorCode(int code) {
        PigStats.get().setErrorCode(code); //---> PigStats.get() returns null
    }
{code}
To reproduce the issue, run the following command-
{code}
pig -x -f script.pig  #---> Note -x is missing the argument
{code}
The stack trace looks like this-
{code}
Exception in thread "main" java.lang.NullPointerException
        at 
org.apache.pig.tools.pigstats.PigStatsUtil.setErrorMessage(PigStatsUtil.java:145)
        at org.apache.pig.Main.run(Main.java:618)
        at org.apache.pig.Main.main(Main.java:156)
{code}



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to