You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "mahesh kumar behera (Jira)" <ji...@apache.org> on 2021/04/09 13:06:00 UTC
[jira] [Updated] (CALCITE-4572) Conversion of PIG scripts
containing rank and filter commands fails
[ https://issues.apache.org/jira/browse/CALCITE-4572?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
mahesh kumar behera updated CALCITE-4572:
-----------------------------------------
Description:
The alias used for RANK is not proper and that causing parameter not found error during conversion.
{code:java}
A = LOAD 'scott.EMP' as (EMPNO:int, ENAME:chararray,
JOB:chararray, MGR:int, HIREDATE:datetime, SAL:bigdecimal,\n"
COMM:bigdecimal, DEPTNO:int);\n"
+ "B = FOREACH A GENERATE EMPNO, JOB, DEPTNO;\n"
+ "C = RANK B;\n"
+ "D = FILTER C by ($0 > 1);";
{code}
{code:java}
java.lang.IllegalArgumentException: field [rank_B] not found; input fields are: [rank_C, EMPNO, JOB, DEPTNO]
at org.apache.calcite.piglet.PigRelExVisitor.visit(PigRelExVisitor.java:220)
at org.apache.pig.newplan.logical.expression.ProjectExpression.accept(ProjectExpression.java:215)
at org.apache.calcite.piglet.PigRelExWalker.postOrderWalk(PigRelExWalker.java:76)
at org.apache.calcite.piglet.PigRelExWalker.postOrderWalk(PigRelExWalker.java:73)
at org.apache.calcite.piglet.PigRelExWalker.walk(PigRelExWalker.java:58)
at org.apache.calcite.piglet.PigRelExVisitor.translate(PigRelExVisitor.java:123)
at org.apache.calcite.piglet.PigRelExVisitor.translatePigEx(PigRelExVisitor.java:142)
at org.apache.calcite.piglet.PigRelExVisitor.translatePigEx(PigRelExVisitor.java:157)
at org.apache.calcite.piglet.PigRelOpVisitor.visit(PigRelOpVisitor.java:175)
at org.apache.pig.newplan.logical.relational.LOFilter.accept(LOFilter.java:79)
at org.apache.calcite.piglet.PigRelOpWalker.postOrderWalk(PigRelOpWalker.java:84)
at org.apache.calcite.piglet.PigRelOpWalker.walk(PigRelOpWalker.java:62)
at org.apache.calcite.piglet.PigRelOpVisitor.translate(PigRelOpVisitor.java:133)
at org.apache.calcite.piglet.PigConverter.pigPlan2Rel(PigConverter.java:198)
at org.apache.calcite.piglet.PigConverter.pigQuery2Rel(PigConverter.java:157)
at org.apache.calcite.test.PigRelOpTest$Fluent.assertRel(PigRelOpTest.java:76)
at org.apache.calcite.test.PigRelOpTest$Fluent.assertRel(PigRelOpTest.java:90)
at org.apache.calcite.test.PigRelOpTest$Fluent.access$000(PigRelOpTest.java:64)
at org.apache.calcite.test.PigRelOpTest.testRankAndFilter(PigRelOpTest.java:1628) {code}
was:The alias used for RANK is not proper and that causing parameter not found error during conversion.
> Conversion of PIG scripts containing rank and filter commands fails
> -------------------------------------------------------------------
>
> Key: CALCITE-4572
> URL: https://issues.apache.org/jira/browse/CALCITE-4572
> Project: Calcite
> Issue Type: Bug
> Reporter: mahesh kumar behera
> Priority: Major
>
> The alias used for RANK is not proper and that causing parameter not found error during conversion.
> {code:java}
> A = LOAD 'scott.EMP' as (EMPNO:int, ENAME:chararray,
> JOB:chararray, MGR:int, HIREDATE:datetime, SAL:bigdecimal,\n"
> COMM:bigdecimal, DEPTNO:int);\n"
> + "B = FOREACH A GENERATE EMPNO, JOB, DEPTNO;\n"
> + "C = RANK B;\n"
> + "D = FILTER C by ($0 > 1);";
> {code}
> {code:java}
> java.lang.IllegalArgumentException: field [rank_B] not found; input fields are: [rank_C, EMPNO, JOB, DEPTNO]
> at org.apache.calcite.piglet.PigRelExVisitor.visit(PigRelExVisitor.java:220)
> at org.apache.pig.newplan.logical.expression.ProjectExpression.accept(ProjectExpression.java:215)
> at org.apache.calcite.piglet.PigRelExWalker.postOrderWalk(PigRelExWalker.java:76)
> at org.apache.calcite.piglet.PigRelExWalker.postOrderWalk(PigRelExWalker.java:73)
> at org.apache.calcite.piglet.PigRelExWalker.walk(PigRelExWalker.java:58)
> at org.apache.calcite.piglet.PigRelExVisitor.translate(PigRelExVisitor.java:123)
> at org.apache.calcite.piglet.PigRelExVisitor.translatePigEx(PigRelExVisitor.java:142)
> at org.apache.calcite.piglet.PigRelExVisitor.translatePigEx(PigRelExVisitor.java:157)
> at org.apache.calcite.piglet.PigRelOpVisitor.visit(PigRelOpVisitor.java:175)
> at org.apache.pig.newplan.logical.relational.LOFilter.accept(LOFilter.java:79)
> at org.apache.calcite.piglet.PigRelOpWalker.postOrderWalk(PigRelOpWalker.java:84)
> at org.apache.calcite.piglet.PigRelOpWalker.walk(PigRelOpWalker.java:62)
> at org.apache.calcite.piglet.PigRelOpVisitor.translate(PigRelOpVisitor.java:133)
> at org.apache.calcite.piglet.PigConverter.pigPlan2Rel(PigConverter.java:198)
> at org.apache.calcite.piglet.PigConverter.pigQuery2Rel(PigConverter.java:157)
> at org.apache.calcite.test.PigRelOpTest$Fluent.assertRel(PigRelOpTest.java:76)
> at org.apache.calcite.test.PigRelOpTest$Fluent.assertRel(PigRelOpTest.java:90)
> at org.apache.calcite.test.PigRelOpTest$Fluent.access$000(PigRelOpTest.java:64)
> at org.apache.calcite.test.PigRelOpTest.testRankAndFilter(PigRelOpTest.java:1628) {code}
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)