public class FrameUtil extends Object
Constructor and Description |
---|
FrameUtil() |
Modifier and Type | Method and Description |
---|---|
static LinkedHashMap<ElementSymbol,Expression> |
buildSymbolMap(GroupSymbol oldGroup,
GroupSymbol newGroup,
QueryMetadataInterface metadata)
creates a symbol map of elements in oldGroup mapped to corresponding elements in newGroup
if newGroup is null, then a mapping of oldGroup elements to null constants will be returned
|
static void |
convertFrame(PlanNode startNode,
GroupSymbol oldGroup,
Set<GroupSymbol> newGroups,
Map symbolMap,
QueryMetadataInterface metadata) |
static PlanNode |
findJoinSourceNode(PlanNode root)
Find the ACCESS, SOURCE, SET_OP, JOIN, or NULL node that originates the given groups, but will stop at the
first join node rather than searching for the best fit.
|
static ProcessorPlan |
getNestedPlan(PlanNode accessNode)
Look for SOURCE node either one or two steps below the access node.
|
static boolean |
isOrderedOrStrictLimit(PlanNode node) |
public static void convertFrame(PlanNode startNode, GroupSymbol oldGroup, Set<GroupSymbol> newGroups, Map symbolMap, QueryMetadataInterface metadata) throws QueryPlannerException
QueryPlannerException
public static LinkedHashMap<ElementSymbol,Expression> buildSymbolMap(GroupSymbol oldGroup, GroupSymbol newGroup, QueryMetadataInterface metadata) throws QueryMetadataException, TeiidComponentException
oldGroup
- newGroup
- metadata
- QueryMetadataException
TeiidComponentException
public static PlanNode findJoinSourceNode(PlanNode root)
root
- groups
- public static ProcessorPlan getNestedPlan(PlanNode accessNode)
accessNode
- public static boolean isOrderedOrStrictLimit(PlanNode node)
Copyright © 2019. All rights reserved.