Project UDF output inside a non-foreach statement fail on 0.8
-------------------------------------------------------------
Key: PIG-2077
URL: https://issues.apache.org/jira/browse/PIG-2077
Project: Pig
Issue Type: Bug
Components: impl
Affects Versions: 0.8.1
Reporter: Daniel Dai
Assignee: Daniel Dai
Fix For: 0.8.1
The following script fail on 0.8:
{code}
A = load '1.txt' as (tracking_id, day:chararray);
B = load '2.txt' as (tracking_id, timestamp:chararray);
C = JOIN A by (tracking_id, day) LEFT OUTER, B by (tracking_id,
STRSPLIT(timestamp, ' ').$0);
explain C;
{code}
Error stack:
Caused by: java.lang.ArrayIndexOutOfBoundsException: -1
at java.util.ArrayList.get(ArrayList.java:324)
at
org.apache.pig.newplan.logical.expression.ProjectExpression.findReferent(ProjectExpression.java:207)
at
org.apache.pig.newplan.logical.expression.ProjectExpression.getFieldSchema(ProjectExpression.java:121)
at
org.apache.pig.newplan.logical.optimizer.FieldSchemaResetter.execute(SchemaResetter.java:193)
at
org.apache.pig.newplan.logical.expression.AllSameExpressionVisitor.visit(AllSameExpressionVisitor.java:53)
at
org.apache.pig.newplan.logical.expression.ProjectExpression.accept(ProjectExpression.java:75)
at
org.apache.pig.newplan.ReverseDependencyOrderWalker.walk(ReverseDependencyOrderWalker.java:70)
at org.apache.pig.newplan.PlanVisitor.visit(PlanVisitor.java:50)
at
org.apache.pig.newplan.logical.optimizer.SchemaResetter.visit(SchemaResetter.java:83)
at
org.apache.pig.newplan.logical.relational.LOJoin.accept(LOJoin.java:149)
at
org.apache.pig.newplan.DependencyOrderWalker.walk(DependencyOrderWalker.java:75)
at org.apache.pig.newplan.PlanVisitor.visit(PlanVisitor.java:50)
at
org.apache.pig.backend.hadoop.executionengine.HExecutionEngine.compile(HExecutionEngine.java:262)
This is not a problem on 0.9, trunk, since LogicalExpPlanMigrationVistor is
dropped in 0.9.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira