[ https://issues.apache.org/jira/browse/PIG-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Alan Gates reassigned PIG-1078: ------------------------------- Assignee: Yan Zhou > [zebra] merge join with empty table failed > ------------------------------------------ > > Key: PIG-1078 > URL: https://issues.apache.org/jira/browse/PIG-1078 > Project: Pig > Issue Type: Bug > Reporter: Jing Huang > Assignee: Yan Zhou > Fix For: 0.6.0, 0.7.0 > > Attachments: PIG-1078.patch > > > Got indexOutOfBound exception. > Here is the pig script: > register /grid/0/dev/hadoopqa/jars/zebra.jar; > --a1 = load '1.txt' as (a:int, > b:float,c:long,d:double,e:chararray,f:bytearray,r1(f1:chararray,f2:chararray),m1:map[]); > --a2 = load 'empty.txt' as (a:int, > b:float,c:long,d:double,e:chararray,f:bytearray,r1(f1:chararray,f2:chararray),m1:map[]); > --dump a1; > --a1order = order a1 by a; > --a2order = order a2 by a; > --store a1order into 'a1' using > org.apache.hadoop.zebra.pig.TableStorer('[a,b,c];[d,e,f,r1,m1]'); > --store a2order into 'empty' using > org.apache.hadoop.zebra.pig.TableStorer('[a,b,c];[d,e,f,r1,m1]'); > rec1 = load 'a1' using org.apache.hadoop.zebra.pig.TableLoader(); > rec2 = load 'empty' using org.apache.hadoop.zebra.pig.TableLoader(); > joina = join rec1 by a, rec2 by a using "merge" ; > dump joina; > ====== > please note that table "a1" and "empty" are created correctly. > Here is the stack trace: > Backend error message > --------------------- > java.lang.ArrayIndexOutOfBoundsException: 0 > at > org.apache.hadoop.zebra.mapred.TableInputFormat.getTableRecordReader(TableInputFormat.java:478) > at > org.apache.hadoop.zebra.pig.TableLoader.bindTo(TableLoader.java:166) > at > org.apache.pig.backend.hadoop.executionengine.physicalLayer.relationalOperators.POMergeJoin.seekInRightStream(POMergeJoin.java:400) > at > org.apache.pig.backend.hadoop.executionengine.physicalLayer.relationalOperators.POMergeJoin.getNext(POMergeJoin.java:181) > at > org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.PigMapBase.runPipeline(PigMapBase.java:247) > at > org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.PigMapBase.map(PigMapBase.java:238) > at > org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.PigMapOnly$Map.map(PigMapOnly.java:65) > at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:50) > at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:358) > at org.apache.hadoop.mapred.MapTask.run(MapTask.java:307) > at org.apache.hadoop.mapred.Child.main(Child.java:159) > Pig Stack Trace > --------------- > ERROR 6015: During execution, encountered a Hadoop error. > org.apache.pig.impl.logicalLayer.FrontendException: ERROR 1066: Unable to > open iterator for alias joina > at org.apache.pig.PigServer.openIterator(PigServer.java:481) > at > org.apache.pig.tools.grunt.GruntParser.processDump(GruntParser.java:539) > at > org.apache.pig.tools.pigscript.parser.PigScriptParser.parse(PigScriptParser.java:241) > 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) > Caused by: org.apache.pig.backend.executionengine.ExecException: ERROR 6015: > During execution, encountered a Hadoop error. > at > .apache.hadoop.zebra.mapred.TableInputFormat.getTableRecordReader(TableInputFormat.java:478) > at .apache.hadoop.zebra.pig.TableLoader.bindTo(TableLoader.java:166) > at > .apache.pig.backend.hadoop.executionengine.physicalLayer.relationalOperators.POMergeJoin.seekInRightStream(POMergeJoin.java:400) > at > .apache.pig.backend.hadoop.executionengine.physicalLayer.relationalOperators.POMergeJoin.getNext(POMergeJoin.java:181) > at > .apache.pig.backend.hadoop.executionengine.mapReduceLayer.PigMapBase.runPipeline(PigMapBase.java:247) > at > .apache.pig.backend.hadoop.executionengine.mapReduceLayer.PigMapBase.map(PigMapBase.java:238) > at > .apache.pig.backend.hadoop.executionengine.mapReduceLayer.PigMapOnly$Map.map(PigMapOnly.java:65) > at .apache.hadoop.mapred.MapRunner.run(MapRunner.java:50) > at .apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:358) > at .apache.hadoop.mapred.MapTask.run(MapTask.java:307) > Caused by: java.lang.ArrayIndexOutOfBoundsException: 0 > ... 10 more > ================================================================================ > -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.