[ https://issues.apache.org/jira/browse/PIG-502?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13958560#comment-13958560 ]
Nadav Weissman commented on PIG-502: ------------------------------------ I ran with Apache Pig version 0.11.1 and an illustrate of limit in a nested foreach statement gives a wrong presentation (doing dump to it - gave the correct results) example: b = group a by aid; c_min = foreach b{ o = order a by start_ts ASC; l = limit o 1; generate flatten(l); }; ---------------------------------------------------------------------------------------------------------------- | a | aid:chararray | sid:chararray | start_ts:datetime | ---------------------------------------------------------------------------------------------------------------- | | 8fa | 1167c | 2008-02-27T00:00:00.000-08:00 | | | 8fa | 38a05 | 2008-02-29T00:00:00.000-08:00 | ---------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | b | group:chararray | a:bag{:tuple(aid:chararray,sid:chararray,start_ts:datetime)} | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | 8fa | {(8fa, 1167c, 2008-02-27T00:00:00.000-08:00), (8fa, 38a05, 2008-02-29T00:00:00.000-08:00)} | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------------------- | c_min.o | aid:chararray | sid:chararray | start_ts:datetime | ---------------------------------------------------------------------------------------------------------------------- | | 8fa | 1167c | 2008-02-27T00:00:00.000-08:00 | | | 8fa | 38a05 | 2008-02-29T00:00:00.000-08:00 | ---------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------------------- | c_min.l | aid:chararray | sid:chararray | start_ts:datetime | ---------------------------------------------------------------------------------------------------------------------- | | 8fa | 1167c | 2008-02-27T00:00:00.000-08:00 | | | 8fa | 38a05 | 2008-02-29T00:00:00.000-08:00 | ---------------------------------------------------------------------------------------------------------------------- c_min | l::aid:chararray | l::sid:chararray | l::start_ts:datetime | ----------------------------------------------------------------------------------------------------------------------- | | 8fa | 1167c | 2008-02-27T00:00:00.000-08:00 | | | 8fa | 38a05 | 2008-02-29T00:00:00.000-08:00 | > Limit and Illustrate do not work together > ----------------------------------------- > > Key: PIG-502 > URL: https://issues.apache.org/jira/browse/PIG-502 > Project: Pig > Issue Type: Sub-task > Components: tools > Affects Versions: 0.2.0 > Environment: Hadoop 18 > Reporter: Viraj Bhat > Assignee: Yan Zhou > Fix For: 0.9.0 > > > Suppose a user wants to do an illustrate command after limiting his data to a > certain number of records, it does not seem to work.. > -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- > {code} > MYDATA = load 'testfilelarge.txt' as (f1, f2, f3, f4, f5); > MYDATA = limit MYDATA 10; > describe MYDATA; > illustrate MYDATA; > {code} > -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- > Running this script produces the following output and error > -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- > MYDATA: {f1: bytearray,f2: bytearray,f3: bytearray,f4: bytearray,f5: > bytearray} > 2008-10-18 02:14:26,900 [main] INFO > org.apache.pig.backend.hadoop.executionengine.HExecutionEngine - Connecting > to hadoop fil > e system at: hdfs://localhost:9000 > 2008-10-18 02:14:27,013 [main] INFO > org.apache.pig.backend.hadoop.executionengine.HExecutionEngine - Connecting > to map-reduce > job tracker at: localhost:9001 > java.lang.RuntimeException: Unrecognized logical operator. > at > org.apache.pig.pen.EquivalenceClasses.GetEquivalenceClasses(EquivalenceClasses.java:60) > at > org.apache.pig.pen.DerivedDataVisitor.evaluateOperator(DerivedDataVisitor.java:368) > at > org.apache.pig.pen.DerivedDataVisitor.visit(DerivedDataVisitor.java:273) > at org.apache.pig.impl.logicalLayer.LOLimit.visit(LOLimit.java:71) > at org.apache.pig.impl.logicalLayer.LOLimit.visit(LOLimit.java:10) > at > org.apache.pig.impl.plan.DependencyOrderWalker.walk(DependencyOrderWalker.java:68) > at org.apache.pig.impl.plan.PlanVisitor.visit(PlanVisitor.java:51) > at > org.apache.pig.pen.LineageTrimmingVisitor.init(LineageTrimmingVisitor.java:98) > at > org.apache.pig.pen.LineageTrimmingVisitor.<init>(LineageTrimmingVisitor.java:90) > at > org.apache.pig.pen.ExampleGenerator.getExamples(ExampleGenerator.java:106) > at org.apache.pig.PigServer.getExamples(PigServer.java:630) > at > org.apache.pig.tools.grunt.GruntParser.processIllustrate(GruntParser.java:279) > at > org.apache.pig.tools.pigscript.parser.PigScriptParser.parse(PigScriptParser.java:183) > at > org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:84) > at org.apache.pig.tools.grunt.Grunt.exec(Grunt.java:64) > at org.apache.pig.Main.main(Main.java:306) > -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- > If I remove the illustrate and replace it with "dump MYDATA;" it works.. > -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- > {code} > MYDATA = load 'testfilelarge.txt' as (f1, f2, f3, f4, f5); > MYDATA = limit MYDATA 10; > describe MYDATA; > -- illustrate MYDATA; > dump MYDATA; > {code} > -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -- This message was sent by Atlassian JIRA (v6.2#6252)