@Override public RESULT visitLimit(CONTEXT context, LogicalPlan plan, LogicalPlan.QueryBlock block, LimitNode node, Stack<LogicalNode> stack) throws TajoException { stack.push(node); RESULT result = visit(context, plan, block, node.getChild(), stack); stack.pop(); return result; }
@Override public RESULT visitLimit(CONTEXT context, LogicalPlan plan, LogicalPlan.QueryBlock block, LimitNode node, Stack<LogicalNode> stack) throws TajoException { stack.push(node); RESULT result = visit(context, plan, block, node.getChild(), stack); stack.pop(); return result; }
child = ((LimitNode)child).getChild();
child = ((LimitNode)child).getChild();
LimitNode limitNode = (LimitNode) logicalNode; stack.push(limitNode); leftExec = createPlanRecursive(ctx, limitNode.getChild(), stack); stack.pop(); return new LimitExec(ctx, limitNode.getInSchema(),
LimitNode limitNode = (LimitNode) logicalNode; stack.push(limitNode); leftExec = createPlanRecursive(ctx, limitNode.getChild(), stack); stack.pop(); return new LimitExec(ctx, limitNode.getInSchema(),
@Test public final void testLimit() throws CloneNotSupportedException, TajoException { QueryContext qc = createQueryContext(); Expr expr = sqlAnalyzer.parse(QUERIES[12]); LogicalNode plan = planner.createPlan(qc, expr).getRootBlock().getRoot(); testCloneLogicalNode(plan); assertEquals(NodeType.ROOT, plan.getType()); LogicalRootNode root = (LogicalRootNode) plan; assertEquals(NodeType.PROJECTION, root.getChild().getType()); ProjectionNode projNode = root.getChild(); assertEquals(NodeType.LIMIT, projNode.getChild().getType()); LimitNode limitNode = projNode.getChild(); assertEquals(NodeType.SORT, limitNode.getChild().getType()); }