You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pig.apache.org by "Viraj Bhat (JIRA)" <ji...@apache.org> on 2010/02/20 03:33:27 UTC

[jira] Created: (PIG-1247) Error Number makes it hard to debug: ERROR 2999: Unexpected internal error. org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error

Error Number makes it hard to debug: ERROR 2999: Unexpected internal error. org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error
---------------------------------------------------------------------------------------------------------------------------------------------------------------------

                 Key: PIG-1247
                 URL: https://issues.apache.org/jira/browse/PIG-1247
             Project: Pig
          Issue Type: Bug
          Components: impl
    Affects Versions: 0.6.0
            Reporter: Viraj Bhat
             Fix For: 0.7.0


I have a large script in which there are intermediate stores statements, one of them writes to a directory I do not have permission to write to. 

The stack trace I get from Pig is this:

2010-02-20 02:16:32,055 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 2999: Unexpected internal error. org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error

Details at logfile: /home/viraj/pig_1266632145355.log

Pig Stack Trace
---------------

ERROR 2999: Unexpected internal error. org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error
java.lang.ClassCastException: org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error
        at org.apache.pig.impl.logicalLayer.parser.QueryParser.StoreClause(QueryParser.java:3583)
        at org.apache.pig.impl.logicalLayer.parser.QueryParser.BaseExpr(QueryParser.java:1407)
        at org.apache.pig.impl.logicalLayer.parser.QueryParser.Expr(QueryParser.java:949)
        at org.apache.pig.impl.logicalLayer.parser.QueryParser.Parse(QueryParser.java:762)
        at org.apache.pig.impl.logicalLayer.LogicalPlanBuilder.parse(LogicalPlanBuilder.java:63)
        at org.apache.pig.PigServer$Graph.parseQuery(PigServer.java:1036)
        at org.apache.pig.PigServer$Graph.registerQuery(PigServer.java:986)
        at org.apache.pig.PigServer.registerQuery(PigServer.java:386)
        at org.apache.pig.tools.grunt.GruntParser.processPig(GruntParser.java:720)
        at org.apache.pig.tools.pigscript.parser.PigScriptParser.parse(PigScriptParser.java:324)
        at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:168)
        at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:144)
        at org.apache.pig.tools.grunt.Grunt.exec(Grunt.java:89)
        at org.apache.pig.Main.main(Main.java:386)
================================================================================

The only way to find the error was to look at the javacc generated QueryParser.java code and do a System.out.println()


Here is a script to reproduce the problem:

{code}
A = load '/user/viraj/three.txt' using PigStorage();
B = foreach A generate ['a'#'12'] as b:map[] ;
store B into '/user/secure/pigtest' using PigStorage();
{code}

"three.txt" has 3 lines which contain nothing but the number "1".

{code}
$ hadoop fs -ls /user/secure/

ls: could not get get listing for 'hdfs://mynamenode/user/secure' : org.apache.hadoop.security.AccessControlException: Permission denied: user=viraj, access=READ_EXECUTE, inode="secure":secure:users:rwx------

{code}


Viraj

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


[jira] Commented: (PIG-1247) Error Number makes it hard to debug: ERROR 2999: Unexpected internal error. org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error

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

Daniel Dai commented on PIG-1247:
---------------------------------

This error handling code is hard coded by javacc. Seems we do not have a way to get around currently.

> Error Number makes it hard to debug: ERROR 2999: Unexpected internal error. org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: PIG-1247
>                 URL: https://issues.apache.org/jira/browse/PIG-1247
>             Project: Pig
>          Issue Type: Bug
>          Components: impl
>    Affects Versions: 0.6.0
>            Reporter: Viraj Bhat
>             Fix For: 0.7.0
>
>
> I have a large script in which there are intermediate stores statements, one of them writes to a directory I do not have permission to write to. 
> The stack trace I get from Pig is this:
> 2010-02-20 02:16:32,055 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 2999: Unexpected internal error. org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error
> Details at logfile: /home/viraj/pig_1266632145355.log
> Pig Stack Trace
> ---------------
> ERROR 2999: Unexpected internal error. org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error
> java.lang.ClassCastException: org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error
>         at org.apache.pig.impl.logicalLayer.parser.QueryParser.StoreClause(QueryParser.java:3583)
>         at org.apache.pig.impl.logicalLayer.parser.QueryParser.BaseExpr(QueryParser.java:1407)
>         at org.apache.pig.impl.logicalLayer.parser.QueryParser.Expr(QueryParser.java:949)
>         at org.apache.pig.impl.logicalLayer.parser.QueryParser.Parse(QueryParser.java:762)
>         at org.apache.pig.impl.logicalLayer.LogicalPlanBuilder.parse(LogicalPlanBuilder.java:63)
>         at org.apache.pig.PigServer$Graph.parseQuery(PigServer.java:1036)
>         at org.apache.pig.PigServer$Graph.registerQuery(PigServer.java:986)
>         at org.apache.pig.PigServer.registerQuery(PigServer.java:386)
>         at org.apache.pig.tools.grunt.GruntParser.processPig(GruntParser.java:720)
>         at org.apache.pig.tools.pigscript.parser.PigScriptParser.parse(PigScriptParser.java:324)
>         at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:168)
>         at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:144)
>         at org.apache.pig.tools.grunt.Grunt.exec(Grunt.java:89)
>         at org.apache.pig.Main.main(Main.java:386)
> ================================================================================
> The only way to find the error was to look at the javacc generated QueryParser.java code and do a System.out.println()
> Here is a script to reproduce the problem:
> {code}
> A = load '/user/viraj/three.txt' using PigStorage();
> B = foreach A generate ['a'#'12'] as b:map[] ;
> store B into '/user/secure/pigtest' using PigStorage();
> {code}
> "three.txt" has 3 lines which contain nothing but the number "1".
> {code}
> $ hadoop fs -ls /user/secure/
> ls: could not get get listing for 'hdfs://mynamenode/user/secure' : org.apache.hadoop.security.AccessControlException: Permission denied: user=viraj, access=READ_EXECUTE, inode="secure":secure:users:rwx------
> {code}
> Viraj

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


[jira] Assigned: (PIG-1247) Error Number makes it hard to debug: ERROR 2999: Unexpected internal error. org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error

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

Olga Natkovich reassigned PIG-1247:
-----------------------------------

    Assignee: Xuefu Zhang

> Error Number makes it hard to debug: ERROR 2999: Unexpected internal error. org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: PIG-1247
>                 URL: https://issues.apache.org/jira/browse/PIG-1247
>             Project: Pig
>          Issue Type: Bug
>          Components: impl
>    Affects Versions: 0.6.0
>            Reporter: Viraj Bhat
>            Assignee: Xuefu Zhang
>             Fix For: 0.9.0
>
>
> I have a large script in which there are intermediate stores statements, one of them writes to a directory I do not have permission to write to. 
> The stack trace I get from Pig is this:
> 2010-02-20 02:16:32,055 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 2999: Unexpected internal error. org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error
> Details at logfile: /home/viraj/pig_1266632145355.log
> Pig Stack Trace
> ---------------
> ERROR 2999: Unexpected internal error. org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error
> java.lang.ClassCastException: org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error
>         at org.apache.pig.impl.logicalLayer.parser.QueryParser.StoreClause(QueryParser.java:3583)
>         at org.apache.pig.impl.logicalLayer.parser.QueryParser.BaseExpr(QueryParser.java:1407)
>         at org.apache.pig.impl.logicalLayer.parser.QueryParser.Expr(QueryParser.java:949)
>         at org.apache.pig.impl.logicalLayer.parser.QueryParser.Parse(QueryParser.java:762)
>         at org.apache.pig.impl.logicalLayer.LogicalPlanBuilder.parse(LogicalPlanBuilder.java:63)
>         at org.apache.pig.PigServer$Graph.parseQuery(PigServer.java:1036)
>         at org.apache.pig.PigServer$Graph.registerQuery(PigServer.java:986)
>         at org.apache.pig.PigServer.registerQuery(PigServer.java:386)
>         at org.apache.pig.tools.grunt.GruntParser.processPig(GruntParser.java:720)
>         at org.apache.pig.tools.pigscript.parser.PigScriptParser.parse(PigScriptParser.java:324)
>         at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:168)
>         at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:144)
>         at org.apache.pig.tools.grunt.Grunt.exec(Grunt.java:89)
>         at org.apache.pig.Main.main(Main.java:386)
> ================================================================================
> The only way to find the error was to look at the javacc generated QueryParser.java code and do a System.out.println()
> Here is a script to reproduce the problem:
> {code}
> A = load '/user/viraj/three.txt' using PigStorage();
> B = foreach A generate ['a'#'12'] as b:map[] ;
> store B into '/user/secure/pigtest' using PigStorage();
> {code}
> "three.txt" has 3 lines which contain nothing but the number "1".
> {code}
> $ hadoop fs -ls /user/secure/
> ls: could not get get listing for 'hdfs://mynamenode/user/secure' : org.apache.hadoop.security.AccessControlException: Permission denied: user=viraj, access=READ_EXECUTE, inode="secure":secure:users:rwx------
> {code}
> Viraj

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


[jira] Updated: (PIG-1247) Error Number makes it hard to debug: ERROR 2999: Unexpected internal error. org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error

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

Olga Natkovich updated PIG-1247:
--------------------------------

    Fix Version/s:     (was: 0.7.0)

This depends on parser changes which we can't change in Pig 0.7.0

> Error Number makes it hard to debug: ERROR 2999: Unexpected internal error. org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: PIG-1247
>                 URL: https://issues.apache.org/jira/browse/PIG-1247
>             Project: Pig
>          Issue Type: Bug
>          Components: impl
>    Affects Versions: 0.6.0
>            Reporter: Viraj Bhat
>
> I have a large script in which there are intermediate stores statements, one of them writes to a directory I do not have permission to write to. 
> The stack trace I get from Pig is this:
> 2010-02-20 02:16:32,055 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 2999: Unexpected internal error. org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error
> Details at logfile: /home/viraj/pig_1266632145355.log
> Pig Stack Trace
> ---------------
> ERROR 2999: Unexpected internal error. org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error
> java.lang.ClassCastException: org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error
>         at org.apache.pig.impl.logicalLayer.parser.QueryParser.StoreClause(QueryParser.java:3583)
>         at org.apache.pig.impl.logicalLayer.parser.QueryParser.BaseExpr(QueryParser.java:1407)
>         at org.apache.pig.impl.logicalLayer.parser.QueryParser.Expr(QueryParser.java:949)
>         at org.apache.pig.impl.logicalLayer.parser.QueryParser.Parse(QueryParser.java:762)
>         at org.apache.pig.impl.logicalLayer.LogicalPlanBuilder.parse(LogicalPlanBuilder.java:63)
>         at org.apache.pig.PigServer$Graph.parseQuery(PigServer.java:1036)
>         at org.apache.pig.PigServer$Graph.registerQuery(PigServer.java:986)
>         at org.apache.pig.PigServer.registerQuery(PigServer.java:386)
>         at org.apache.pig.tools.grunt.GruntParser.processPig(GruntParser.java:720)
>         at org.apache.pig.tools.pigscript.parser.PigScriptParser.parse(PigScriptParser.java:324)
>         at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:168)
>         at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:144)
>         at org.apache.pig.tools.grunt.Grunt.exec(Grunt.java:89)
>         at org.apache.pig.Main.main(Main.java:386)
> ================================================================================
> The only way to find the error was to look at the javacc generated QueryParser.java code and do a System.out.println()
> Here is a script to reproduce the problem:
> {code}
> A = load '/user/viraj/three.txt' using PigStorage();
> B = foreach A generate ['a'#'12'] as b:map[] ;
> store B into '/user/secure/pigtest' using PigStorage();
> {code}
> "three.txt" has 3 lines which contain nothing but the number "1".
> {code}
> $ hadoop fs -ls /user/secure/
> ls: could not get get listing for 'hdfs://mynamenode/user/secure' : org.apache.hadoop.security.AccessControlException: Permission denied: user=viraj, access=READ_EXECUTE, inode="secure":secure:users:rwx------
> {code}
> Viraj

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


[jira] Updated: (PIG-1247) Error Number makes it hard to debug: ERROR 2999: Unexpected internal error. org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error

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

Olga Natkovich updated PIG-1247:
--------------------------------

    Fix Version/s: 0.9.0

> Error Number makes it hard to debug: ERROR 2999: Unexpected internal error. org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: PIG-1247
>                 URL: https://issues.apache.org/jira/browse/PIG-1247
>             Project: Pig
>          Issue Type: Bug
>          Components: impl
>    Affects Versions: 0.6.0
>            Reporter: Viraj Bhat
>             Fix For: 0.9.0
>
>
> I have a large script in which there are intermediate stores statements, one of them writes to a directory I do not have permission to write to. 
> The stack trace I get from Pig is this:
> 2010-02-20 02:16:32,055 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 2999: Unexpected internal error. org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error
> Details at logfile: /home/viraj/pig_1266632145355.log
> Pig Stack Trace
> ---------------
> ERROR 2999: Unexpected internal error. org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error
> java.lang.ClassCastException: org.apache.pig.backend.datastorage.DataStorageException cannot be cast to java.lang.Error
>         at org.apache.pig.impl.logicalLayer.parser.QueryParser.StoreClause(QueryParser.java:3583)
>         at org.apache.pig.impl.logicalLayer.parser.QueryParser.BaseExpr(QueryParser.java:1407)
>         at org.apache.pig.impl.logicalLayer.parser.QueryParser.Expr(QueryParser.java:949)
>         at org.apache.pig.impl.logicalLayer.parser.QueryParser.Parse(QueryParser.java:762)
>         at org.apache.pig.impl.logicalLayer.LogicalPlanBuilder.parse(LogicalPlanBuilder.java:63)
>         at org.apache.pig.PigServer$Graph.parseQuery(PigServer.java:1036)
>         at org.apache.pig.PigServer$Graph.registerQuery(PigServer.java:986)
>         at org.apache.pig.PigServer.registerQuery(PigServer.java:386)
>         at org.apache.pig.tools.grunt.GruntParser.processPig(GruntParser.java:720)
>         at org.apache.pig.tools.pigscript.parser.PigScriptParser.parse(PigScriptParser.java:324)
>         at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:168)
>         at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:144)
>         at org.apache.pig.tools.grunt.Grunt.exec(Grunt.java:89)
>         at org.apache.pig.Main.main(Main.java:386)
> ================================================================================
> The only way to find the error was to look at the javacc generated QueryParser.java code and do a System.out.println()
> Here is a script to reproduce the problem:
> {code}
> A = load '/user/viraj/three.txt' using PigStorage();
> B = foreach A generate ['a'#'12'] as b:map[] ;
> store B into '/user/secure/pigtest' using PigStorage();
> {code}
> "three.txt" has 3 lines which contain nothing but the number "1".
> {code}
> $ hadoop fs -ls /user/secure/
> ls: could not get get listing for 'hdfs://mynamenode/user/secure' : org.apache.hadoop.security.AccessControlException: Permission denied: user=viraj, access=READ_EXECUTE, inode="secure":secure:users:rwx------
> {code}
> Viraj

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