You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pig.apache.org by "Olga Natkovich (JIRA)" <ji...@apache.org> on 2011/03/17 22:12:33 UTC
[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
[ https://issues.apache.org/jira/browse/PIG-1247?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13008136#comment-13008136 ]
Olga Natkovich commented on PIG-1247:
-------------------------------------
Viraj,
I could not actually reproduce this behavior with no permissions to the output location.
This is the error I got:
2011-03-17 20:56:07,278 [main] ERROR org.apache.pig.tools.grunt.Grunt - You don't have permission to perform the operation. Error from the server: Output Location Validation Failed for: '/user/tejas/foo More info to follow:
org.apache.hadoop.security.AccessControlException: Permission denied: user=olgan, access=EXECUTE, inode="tejas":tejas:users:rwx------
2011-03-17 20:56:07,279 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 6000: Output Location Validation Failed for: '/user/tejas/foo More info to follow:
org.apache.hadoop.security.AccessControlException: Permission denied: user=olgan, access=EXECUTE, inode="tejas":tejas:users:rwx------
> 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.
For more information on JIRA, see: http://www.atlassian.com/software/jira