You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pig.apache.org by "Richard Ding (JIRA)" <ji...@apache.org> on 2011/03/19 00:13:29 UTC

[jira] Created: (PIG-1921) Improve error messages in new parser

Improve error messages in new parser
------------------------------------

                 Key: PIG-1921
                 URL: https://issues.apache.org/jira/browse/PIG-1921
             Project: Pig
          Issue Type: Bug
          Components: impl
    Affects Versions: 0.9.0
            Reporter: Richard Ding
            Assignee: Xuefu Zhang
             Fix For: 0.9.0


The new parser gives better error messages than the old parser (especially with the line numbers). But there are still some places where the error messages can be improved.

Example:

{code}
ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1025: Invalid field projection. Projected field [E::v] does not exist in schema: A::v#28:long,A::u#29:chararray,A::w#30:bytearray,B::v#31:long,B::u#32:chararray,B::w#33:bytearray.
{code}

In this case the #num should be removed from the schema.

Example:

{code}
ERROR org.apache.pig.tools.grunt.Grunt - ERROR 0: line 5:34 mismatched input [''reg''] expecting set null
{code}

In this case the parser detects the error early and gives the line number, but missing the reason part from the old parser message:

{code}
ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1000: Error during parsing. Only COLLECTED, REGULAR or MERGE are valid GROUP modifiers.
{code}

Example:

{code}
grunt> C = join A by v, B by A.t;
2011-03-18 14:04:38,441 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 0: Invalid scalar projection: A
{code}

In this case the real reason is t is not a field of A : {v: int, u:int}. So the message should be: Invalid scalar projection: A.t

Example:

{code}
C = join A by v, B by B::A.v;
2011-03-18 14:40:11,590 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1000: Invalid field reference. Referenced field [v] does not exist in schema: null.
{code}

The message here is not clear and the schema shouldn't be null.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Resolved] (PIG-1921) Improve error messages in new parser

Posted by "Xuefu Zhang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/PIG-1921?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Xuefu Zhang resolved PIG-1921.
------------------------------

      Resolution: Fixed
    Release Note: Patch PIG-1921-1.patch is committed to trunk

> Improve error messages in new parser
> ------------------------------------
>
>                 Key: PIG-1921
>                 URL: https://issues.apache.org/jira/browse/PIG-1921
>             Project: Pig
>          Issue Type: Bug
>          Components: impl
>    Affects Versions: 0.9.0
>            Reporter: Richard Ding
>            Assignee: Xuefu Zhang
>             Fix For: 0.9.0
>
>         Attachments: PIG-1921-1.patch, PIG-1921.patch
>
>
> The new parser gives better error messages than the old parser (especially with the line numbers). But there are still some places where the error messages can be improved.
> Example:
> {code}
> ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1025: Invalid field projection. Projected field [E::v] does not exist in schema: A::v#28:long,A::u#29:chararray,A::w#30:bytearray,B::v#31:long,B::u#32:chararray,B::w#33:bytearray.
> {code}
> In this case the #num should be removed from the schema.
> Example:
> {code}
> ERROR org.apache.pig.tools.grunt.Grunt - ERROR 0: line 5:34 mismatched input [''reg''] expecting set null
> {code}
> In this case the parser detects the error early and gives the line number, but missing the reason part from the old parser message:
> {code}
> ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1000: Error during parsing. Only COLLECTED, REGULAR or MERGE are valid GROUP modifiers.
> {code}
> Example:
> {code}
> grunt> C = join A by v, B by A.t;
> 2011-03-18 14:04:38,441 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 0: Invalid scalar projection: A
> {code}
> In this case the real reason is t is not a field of A : {v: int, u:int}. So the message should be: Invalid scalar projection: A.t
> Example:
> {code}
> C = join A by v, B by B::A.v;
> 2011-03-18 14:40:11,590 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1000: Invalid field reference. Referenced field [v] does not exist in schema: null.
> {code}
> The message here is not clear and the schema shouldn't be null.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (PIG-1921) Improve error messages in new parser

Posted by "Xuefu Zhang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/PIG-1921?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Xuefu Zhang updated PIG-1921:
-----------------------------

    Attachment: PIG-1921.patch

Fix the error message about "schema: null".
Scalar error is duplicated with PIG-1788.
Other issues mentioned have been fixed already.

> Improve error messages in new parser
> ------------------------------------
>
>                 Key: PIG-1921
>                 URL: https://issues.apache.org/jira/browse/PIG-1921
>             Project: Pig
>          Issue Type: Bug
>          Components: impl
>    Affects Versions: 0.9.0
>            Reporter: Richard Ding
>            Assignee: Xuefu Zhang
>             Fix For: 0.9.0
>
>         Attachments: PIG-1921.patch
>
>
> The new parser gives better error messages than the old parser (especially with the line numbers). But there are still some places where the error messages can be improved.
> Example:
> {code}
> ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1025: Invalid field projection. Projected field [E::v] does not exist in schema: A::v#28:long,A::u#29:chararray,A::w#30:bytearray,B::v#31:long,B::u#32:chararray,B::w#33:bytearray.
> {code}
> In this case the #num should be removed from the schema.
> Example:
> {code}
> ERROR org.apache.pig.tools.grunt.Grunt - ERROR 0: line 5:34 mismatched input [''reg''] expecting set null
> {code}
> In this case the parser detects the error early and gives the line number, but missing the reason part from the old parser message:
> {code}
> ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1000: Error during parsing. Only COLLECTED, REGULAR or MERGE are valid GROUP modifiers.
> {code}
> Example:
> {code}
> grunt> C = join A by v, B by A.t;
> 2011-03-18 14:04:38,441 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 0: Invalid scalar projection: A
> {code}
> In this case the real reason is t is not a field of A : {v: int, u:int}. So the message should be: Invalid scalar projection: A.t
> Example:
> {code}
> C = join A by v, B by B::A.v;
> 2011-03-18 14:40:11,590 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1000: Invalid field reference. Referenced field [v] does not exist in schema: null.
> {code}
> The message here is not clear and the schema shouldn't be null.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (PIG-1921) Improve error messages in new parser

Posted by "Xuefu Zhang (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/PIG-1921?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13021774#comment-13021774 ] 

Xuefu Zhang commented on PIG-1921:
----------------------------------

Patch PIG-1921-1.patch is committed to trunk.

> Improve error messages in new parser
> ------------------------------------
>
>                 Key: PIG-1921
>                 URL: https://issues.apache.org/jira/browse/PIG-1921
>             Project: Pig
>          Issue Type: Bug
>          Components: impl
>    Affects Versions: 0.9.0
>            Reporter: Richard Ding
>            Assignee: Xuefu Zhang
>             Fix For: 0.9.0
>
>         Attachments: PIG-1921-1.patch, PIG-1921.patch
>
>
> The new parser gives better error messages than the old parser (especially with the line numbers). But there are still some places where the error messages can be improved.
> Example:
> {code}
> ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1025: Invalid field projection. Projected field [E::v] does not exist in schema: A::v#28:long,A::u#29:chararray,A::w#30:bytearray,B::v#31:long,B::u#32:chararray,B::w#33:bytearray.
> {code}
> In this case the #num should be removed from the schema.
> Example:
> {code}
> ERROR org.apache.pig.tools.grunt.Grunt - ERROR 0: line 5:34 mismatched input [''reg''] expecting set null
> {code}
> In this case the parser detects the error early and gives the line number, but missing the reason part from the old parser message:
> {code}
> ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1000: Error during parsing. Only COLLECTED, REGULAR or MERGE are valid GROUP modifiers.
> {code}
> Example:
> {code}
> grunt> C = join A by v, B by A.t;
> 2011-03-18 14:04:38,441 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 0: Invalid scalar projection: A
> {code}
> In this case the real reason is t is not a field of A : {v: int, u:int}. So the message should be: Invalid scalar projection: A.t
> Example:
> {code}
> C = join A by v, B by B::A.v;
> 2011-03-18 14:40:11,590 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1000: Invalid field reference. Referenced field [v] does not exist in schema: null.
> {code}
> The message here is not clear and the schema shouldn't be null.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (PIG-1921) Improve error messages in new parser

Posted by "Xuefu Zhang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/PIG-1921?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Xuefu Zhang updated PIG-1921:
-----------------------------

    Attachment: PIG-1921-1.patch

Patch is updated to fix a negative test case for which error message is slightly different.

Unit tests all pass now.

> Improve error messages in new parser
> ------------------------------------
>
>                 Key: PIG-1921
>                 URL: https://issues.apache.org/jira/browse/PIG-1921
>             Project: Pig
>          Issue Type: Bug
>          Components: impl
>    Affects Versions: 0.9.0
>            Reporter: Richard Ding
>            Assignee: Xuefu Zhang
>             Fix For: 0.9.0
>
>         Attachments: PIG-1921-1.patch, PIG-1921.patch
>
>
> The new parser gives better error messages than the old parser (especially with the line numbers). But there are still some places where the error messages can be improved.
> Example:
> {code}
> ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1025: Invalid field projection. Projected field [E::v] does not exist in schema: A::v#28:long,A::u#29:chararray,A::w#30:bytearray,B::v#31:long,B::u#32:chararray,B::w#33:bytearray.
> {code}
> In this case the #num should be removed from the schema.
> Example:
> {code}
> ERROR org.apache.pig.tools.grunt.Grunt - ERROR 0: line 5:34 mismatched input [''reg''] expecting set null
> {code}
> In this case the parser detects the error early and gives the line number, but missing the reason part from the old parser message:
> {code}
> ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1000: Error during parsing. Only COLLECTED, REGULAR or MERGE are valid GROUP modifiers.
> {code}
> Example:
> {code}
> grunt> C = join A by v, B by A.t;
> 2011-03-18 14:04:38,441 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 0: Invalid scalar projection: A
> {code}
> In this case the real reason is t is not a field of A : {v: int, u:int}. So the message should be: Invalid scalar projection: A.t
> Example:
> {code}
> C = join A by v, B by B::A.v;
> 2011-03-18 14:40:11,590 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1000: Invalid field reference. Referenced field [v] does not exist in schema: null.
> {code}
> The message here is not clear and the schema shouldn't be null.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (PIG-1921) Improve error messages in new parser

Posted by "Xuefu Zhang (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/PIG-1921?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13021283#comment-13021283 ] 

Xuefu Zhang commented on PIG-1921:
----------------------------------

Test-patch run: (no new files. Additional release warning seems bogus)

     [exec] -1 overall.
     [exec]
     [exec]     +1 @author.  The patch does not contain any @author tags.
     [exec]
     [exec]     +1 tests included.  The patch appears to include 3 new or modified tests.
     [exec]
     [exec]     +1 javadoc.  The javadoc tool did not generate any warning messages.
     [exec]
     [exec]     +1 javac.  The applied patch does not increase the total number of javac compiler warnings.
     [exec]
     [exec]     +1 findbugs.  The patch does not introduce any new Findbugs warnings.
     [exec]
     [exec]     -1 release audit.  The applied patch generated 564 release audit warnings (more than the trunk's current 563 warnings).


> Improve error messages in new parser
> ------------------------------------
>
>                 Key: PIG-1921
>                 URL: https://issues.apache.org/jira/browse/PIG-1921
>             Project: Pig
>          Issue Type: Bug
>          Components: impl
>    Affects Versions: 0.9.0
>            Reporter: Richard Ding
>            Assignee: Xuefu Zhang
>             Fix For: 0.9.0
>
>         Attachments: PIG-1921.patch
>
>
> The new parser gives better error messages than the old parser (especially with the line numbers). But there are still some places where the error messages can be improved.
> Example:
> {code}
> ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1025: Invalid field projection. Projected field [E::v] does not exist in schema: A::v#28:long,A::u#29:chararray,A::w#30:bytearray,B::v#31:long,B::u#32:chararray,B::w#33:bytearray.
> {code}
> In this case the #num should be removed from the schema.
> Example:
> {code}
> ERROR org.apache.pig.tools.grunt.Grunt - ERROR 0: line 5:34 mismatched input [''reg''] expecting set null
> {code}
> In this case the parser detects the error early and gives the line number, but missing the reason part from the old parser message:
> {code}
> ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1000: Error during parsing. Only COLLECTED, REGULAR or MERGE are valid GROUP modifiers.
> {code}
> Example:
> {code}
> grunt> C = join A by v, B by A.t;
> 2011-03-18 14:04:38,441 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 0: Invalid scalar projection: A
> {code}
> In this case the real reason is t is not a field of A : {v: int, u:int}. So the message should be: Invalid scalar projection: A.t
> Example:
> {code}
> C = join A by v, B by B::A.v;
> 2011-03-18 14:40:11,590 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1000: Invalid field reference. Referenced field [v] does not exist in schema: null.
> {code}
> The message here is not clear and the schema shouldn't be null.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (PIG-1921) Improve error messages in new parser

Posted by "Daniel Dai (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/PIG-1921?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13021127#comment-13021127 ] 

Daniel Dai commented on PIG-1921:
---------------------------------

+1

> Improve error messages in new parser
> ------------------------------------
>
>                 Key: PIG-1921
>                 URL: https://issues.apache.org/jira/browse/PIG-1921
>             Project: Pig
>          Issue Type: Bug
>          Components: impl
>    Affects Versions: 0.9.0
>            Reporter: Richard Ding
>            Assignee: Xuefu Zhang
>             Fix For: 0.9.0
>
>         Attachments: PIG-1921.patch
>
>
> The new parser gives better error messages than the old parser (especially with the line numbers). But there are still some places where the error messages can be improved.
> Example:
> {code}
> ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1025: Invalid field projection. Projected field [E::v] does not exist in schema: A::v#28:long,A::u#29:chararray,A::w#30:bytearray,B::v#31:long,B::u#32:chararray,B::w#33:bytearray.
> {code}
> In this case the #num should be removed from the schema.
> Example:
> {code}
> ERROR org.apache.pig.tools.grunt.Grunt - ERROR 0: line 5:34 mismatched input [''reg''] expecting set null
> {code}
> In this case the parser detects the error early and gives the line number, but missing the reason part from the old parser message:
> {code}
> ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1000: Error during parsing. Only COLLECTED, REGULAR or MERGE are valid GROUP modifiers.
> {code}
> Example:
> {code}
> grunt> C = join A by v, B by A.t;
> 2011-03-18 14:04:38,441 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 0: Invalid scalar projection: A
> {code}
> In this case the real reason is t is not a field of A : {v: int, u:int}. So the message should be: Invalid scalar projection: A.t
> Example:
> {code}
> C = join A by v, B by B::A.v;
> 2011-03-18 14:40:11,590 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1000: Invalid field reference. Referenced field [v] does not exist in schema: null.
> {code}
> The message here is not clear and the schema shouldn't be null.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira