猪脚本错误1200 null

时间:2014-06-09 08:24:36

标签: hadoop apache-pig

我运行了pig脚本,但它返回错误1200.它似乎类似于 NullPointerException 错误。这是脚本和错误。怎么解决?

脚本:

A = load 'hdfs://url/input' using PigStorage(':') AS (id: chararray, name:chararray); 

B = foreach A generate $0 as id;

store B into 'hdfs://tmp/output';

错误:

Pig logfile dump:

Pig Stack Trace
---------------
ERROR 1200: null

org.apache.pig.impl.logicalLayer.FrontendException: ERROR 1000: Error during parsing. null
    at org.apache.pig.PigServer$Graph.parseQuery(PigServer.java:1689)
    at org.apache.pig.PigServer$Graph.access$000(PigServer.java:1409)
    at org.apache.pig.PigServer.parseAndBuild(PigServer.java:342)
    at org.apache.pig.PigServer.executeBatch(PigServer.java:367)
    at org.apache.pig.PigServer.executeBatch(PigServer.java:353)
    at org.apache.pig.tools.grunt.GruntParser.executeBatch(GruntParser.java:140)
    at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:202)
    at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:173)
    at org.apache.pig.tools.grunt.Grunt.exec(Grunt.java:84)
    at org.apache.pig.Main.run(Main.java:478)
    at org.apache.pig.PigRunner.run(PigRunner.java:49)
    at org.apache.oozie.action.hadoop.PigMain.runPigJob(PigMain.java:283)
    at org.apache.oozie.action.hadoop.PigMain.run(PigMain.java:223)
    at org.apache.oozie.action.hadoop.LauncherMain.run(LauncherMain.java:37)
    at org.apache.oozie.action.hadoop.PigMain.main(PigMain.java:76)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.oozie.action.hadoop.LauncherMapper.map(LauncherMapper.java:226)
    at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:54)
    at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:429)
    at org.apache.hadoop.mapred.MapTask.run(MapTask.java:341)
    at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:162)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.security.auth.Subject.doAs(Subject.java:396)
    at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1491)
    at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:157)
Caused by: Failed to parse: null
    at org.apache.pig.parser.QueryParserDriver.parse(QueryParserDriver.java:198)
    at org.apache.pig.PigServer$Graph.parseQuery(PigServer.java:1676)
    ... 27 more
Caused by: java.lang.NullPointerException
    at org.apache.hadoop.fs.swift.http.SwiftRestClient$AuthenticationPost.extractResult(SwiftRestClient.java:1123)
    at org.apache.hadoop.fs.swift.http.SwiftRestClient$AuthenticationPost.extractResult(SwiftRestClient.java:1085)
    at org.apache.hadoop.fs.swift.http.SwiftRestClient.perform(SwiftRestClient.java:1407)
    at org.apache.hadoop.fs.swift.http.SwiftRestClient.authenticate(SwiftRestClient.java:1080)
    at org.apache.hadoop.fs.swift.http.SwiftRestClient.authIfNeeded(SwiftRestClient.java:1299)
    at org.apache.hadoop.fs.swift.http.SwiftRestClient.preRemoteCommand(SwiftRestClient.java:1315)
    at org.apache.hadoop.fs.swift.http.SwiftRestClient.headRequest(SwiftRestClient.java:1015)
    at org.apache.hadoop.fs.swift.snative.SwiftNativeFileSystemStore.stat(SwiftNativeFileSystemStore.java:256)
    at org.apache.hadoop.fs.swift.snative.SwiftNativeFileSystemStore.getObjectMetadata(SwiftNativeFileSystemStore.java:211)
    at org.apache.hadoop.fs.swift.snative.SwiftNativeFileSystemStore.getObjectMetadata(SwiftNativeFileSystemStore.java:180)
    at org.apache.hadoop.fs.swift.snative.SwiftNativeFileSystem.getFileStatus(SwiftNativeFileSystem.java:173)
    at org.apache.hadoop.fs.FileSystem.exists(FileSystem.java:1397)
    at org.apache.pig.backend.hadoop.datastorage.HDataStorage.isContainer(HDataStorage.java:200)
    at org.apache.pig.builtin.JsonMetadata.findMetaFile(JsonMetadata.java:113)
    at org.apache.pig.builtin.JsonMetadata.getSchema(JsonMetadata.java:191)
    at org.apache.pig.builtin.PigStorage.getSchema(PigStorage.java:517)
    at org.apache.pig.newplan.logical.relational.LOLoad.getSchemaFromMetaData(LOLoad.java:175)
    at org.apache.pig.newplan.logical.relational.LOLoad.<init>(LOLoad.java:89)
    at org.apache.pig.parser.LogicalPlanBuilder.buildLoadOp(LogicalPlanBuilder.java:853)
    at org.apache.pig.parser.LogicalPlanGenerator.load_clause(LogicalPlanGenerator.java:3479)
    at org.apache.pig.parser.LogicalPlanGenerator.op_clause(LogicalPlanGenerator.java:1536)
    at org.apache.pig.parser.LogicalPlanGenerator.general_statement(LogicalPlanGenerator.java:1013)
    at org.apache.pig.parser.LogicalPlanGenerator.statement(LogicalPlanGenerator.java:553)
    at org.apache.pig.parser.LogicalPlanGenerator.query(LogicalPlanGenerator.java:421)
    at org.apache.pig.parser.QueryParserDriver.parse(QueryParserDriver.java:188)
    ... 28 more

2 个答案:

答案 0 :(得分:0)

我找到了答案。因为在我的情况下,数据源中的密码是错误的。所以它给出了这样的错误。

答案 1 :(得分:0)

我使用以下查询从我这边检查了同样的工作并正常工作:

A = load 'hdfs://url/input' using PigStorage(':') AS (id: chararray, name:chararray);

B = foreach A generate $0 as id;

store B into 'hdfs://tmp/output' using PigStorage(':');

即使存储到HDFS路径中,我们也需要提及存储类型(TextStorage / PigStorage