Package org.apache.pig.newplan.logical.relational

Examples of org.apache.pig.newplan.logical.relational.LOForEach


        "b = foreach a generate " + Identity.class.getName() + "(*);" +
        "store b into 'y';";

        LogicalPlan lp = buildPlan(query);
        Operator store = lp.getSinks().get(0);
        LOForEach foreach = (LOForEach)lp.getPredecessors(store).get(0);
        String s = foreach.getSchema().toString(false);
        Assert.assertTrue(s.equals(":tuple(name:bytearray,age:bytearray,gpa:bytearray)"));
    }
View Full Code Here


                       "b = foreach a generate " + Identity.class.getName() + "($0, $1);" +
                       "store b into 'y';";

        LogicalPlan lp = buildPlan(query);
        Operator store = lp.getSinks().get(0);
        LOForEach foreach = (LOForEach)lp.getPredecessors(store).get(0);
        String s = foreach.getSchema().toString(false);
        Assert.assertTrue(s.equals(":tuple(:bytearray,:bytearray)"));
    }
View Full Code Here

        String query = "a = load 'one';" +
        "b = foreach a generate " + Identity.class.getName() + "(*);" +
        "store b into 'y';";
        LogicalPlan lp = buildPlan(query);
        Operator store = lp.getSinks().get(0);
        LOForEach foreach = (LOForEach)lp.getPredecessors(store).get(0);
        String s = foreach.getSchema().toString(false);
        Assert.assertTrue(s.equals(":tuple()"));
    }
View Full Code Here

        String query = "a = load 'one' as (f1: chararray);" +
        "b = foreach a generate TOKENIZE(f1);" +
        "store b into 'output';";
        LogicalPlan lp = buildPlan(query);
        Operator store = lp.getSinks().get(0);
        LOForEach foreach = (LOForEach) lp.getPredecessors(store).get(0);
        String s = foreach.getSchema().toString(false);
        Assert.assertTrue( s.equals("bag_of_tokenTuples_from_f1:bag{tuple_of_tokens:tuple(token:chararray)}"));
    }
View Full Code Here

        String query = "a = load 'one' as (f1: chararray, f2: chararray);" +
        "b = foreach a generate TOKENIZE(f1), TOKENIZE(f2);" +
        "store b into 'output';";
        LogicalPlan lp = buildPlan(query);
        Operator store = lp.getSinks().get(0);
        LOForEach foreach = (LOForEach) lp.getPredecessors(store).get(0);
        String s = foreach.getSchema().toString(false);
        assertEquals(s, "bag_of_tokenTuples_from_f1:bag{tuple_of_tokens:tuple(token:chararray)}"
            +",bag_of_tokenTuples_from_f2:bag{tuple_of_tokens:tuple(token:chararray)}");
    }
View Full Code Here

    @Test
    public void testEmptyTupleConst() throws Exception{
        String query = "a = foreach (load 'b') generate ();" + "store a into 'output';";
        LogicalPlan lp = buildPlan( query );
        Operator store = lp.getSinks().get(0);
        LOForEach foreach = (LOForEach) lp.getPredecessors(store).get(0);
        LOGenerate gen = (LOGenerate)foreach.getInnerPlan().getSinks().get(0);
        LogicalExpressionPlan exprPlan = gen.getOutputPlans().get(0);
        Operator logOp = exprPlan.getSources().get(0);
        Assert.assertTrue( logOp instanceof ConstantExpression);

        ConstantExpression loConst = (ConstantExpression)logOp;
        Assert.assertTrue(loConst.getType() == DataType.TUPLE);
        Assert.assertTrue(loConst.getValue() instanceof Tuple);
        Assert.assertTrue(loConst.getValue().equals(TupleFactory.getInstance().newTuple()));

        String s = foreach.getSchema().toString(false);
        Assert.assertTrue( s.equals(":tuple()"));
    }
View Full Code Here

    @Test
    public void testEmptyMapConst() throws Exception{
        String query = "a = foreach (load 'b') generate [];" + "store a into 'output';";
        LogicalPlan lp = buildPlan(query);
        Operator store = lp.getSinks().get(0);
        LOForEach foreach = (LOForEach) lp.getPredecessors(store).get(0);
        LOGenerate gen = (LOGenerate)foreach.getInnerPlan().getSinks().get(0);
        LogicalExpressionPlan exprPlan = gen.getOutputPlans().get(0);
        Operator logOp = exprPlan.getSources().get(0);
        Assert.assertTrue( logOp instanceof ConstantExpression);

        ConstantExpression loConst = (ConstantExpression)logOp;
        Assert.assertTrue(loConst.getType() == DataType.MAP);
        Assert.assertTrue(loConst.getValue() instanceof Map);
        Assert.assertTrue(loConst.getValue().equals(new HashMap<String,Object>()));

        String s = foreach.getSchema().toString(false);
        Assert.assertTrue( s.equals(":map"));
    }
View Full Code Here

    public void testEmptyBagConst() throws Exception{
        String query = "a = foreach (load 'b') generate {};" +
                       "store a into 'output';";
        LogicalPlan lp = buildPlan(query);
        Operator store = lp.getSinks().get(0);
        LOForEach foreach = (LOForEach) lp.getPredecessors(store).get(0);
        LOGenerate gen = (LOGenerate)foreach.getInnerPlan().getSinks().get(0);
        LogicalExpressionPlan exprPlan = gen.getOutputPlans().get(0);
        Operator logOp = exprPlan.getSources().get(0);
        Assert.assertTrue( logOp instanceof ConstantExpression);

        ConstantExpression loConst = (ConstantExpression)logOp;
        Assert.assertTrue(loConst.getType() == DataType.BAG);
        Assert.assertTrue(loConst.getValue() instanceof DataBag);
        Assert.assertTrue(loConst.getValue().equals(BagFactory.getInstance().newDefaultBag()));

        String s = foreach.getSchema().toString(false);
        Assert.assertTrue( s.equals(":bag{}") );
    }
View Full Code Here

    public void testEmptyTupConstRecursive1() throws Exception{
        String query = "a = foreach (load 'b') generate (());" +
                      "store a into 'output';";
        LogicalPlan lp = buildPlan(query);
        Operator store = lp.getSinks().get(0);
        LOForEach foreach = (LOForEach) lp.getPredecessors(store).get(0);

        String s = foreach.getSchema().toString(false);
        Assert.assertTrue( s.equals(":tuple(:tuple())") );
    }
View Full Code Here

    public void testEmptyTupConstRecursive2() throws Exception{
        String query = "a = foreach (load 'b') generate ([]);" +
                       "store a into 'output';";
        LogicalPlan lp = buildPlan( query );
        Operator store = lp.getSinks().get(0);
        LOForEach foreach = (LOForEach) lp.getPredecessors(store).get(0);

        String s = foreach.getSchema().toString(false);
        Assert.assertTrue( s.equals(":tuple(:map)") );
    }
View Full Code Here

TOP

Related Classes of org.apache.pig.newplan.logical.relational.LOForEach

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.