Package com.apple.foundationdb.record.query.plan.temp.explain
This package implements a visualization of a
RelationalExpression
as a graph for both internal debugging purposes and for consumption by end-users.-
Interface Summary Interface Description Attribute Basic interface for all attributes ofAbstractPlannerGraph.AbstractNode
as well asAbstractPlannerGraph.AbstractEdge
.Attribute.CommonAttribute Interface for attributes ofAbstractPlannerGraph.AbstractNode
as well asAbstractPlannerGraph.AbstractEdge
that are used to serialize to GML or to DOT.Attribute.DotAttribute Interface for attributes ofAbstractPlannerGraph.AbstractNode
as well asAbstractPlannerGraph.AbstractEdge
that are used to serialize to DOT.Attribute.GmlAttribute Basic interface all attributes ofAbstractPlannerGraph.AbstractNode
as well asAbstractPlannerGraph.AbstractEdge
that are use to serialize to GML.Attribute.InvisibleAttribute Interface for attributes ofAbstractPlannerGraph.AbstractNode
as well asAbstractPlannerGraph.AbstractEdge
that are used to neither serialize to GML or to DOT.ExplainPlannerGraphRewritable Interface to allowRelationalExpression
s to rewrite their own explain graph representation.GraphExporter.ClusterProvider<N,E> Shorthand-type for the extended functional interface.GraphExporter.ComponentAttributeProvider<T> Shorthand-type for the extended functional interface.GraphExporter.ComponentIdProvider<T> Shorthand-type for the extended functional interface.InternalPlannerGraphRewritable Interface to allowRelationalExpression
s to rewrite their own internal graph representation.PlannerGraph.WithExpression Interface to be implemented by all node classes that represent anRelationalExpression
.PlannerGraph.WithInfoId Interface to be implemented by all node classes that need to externalize an info id for exporting global information such as names and descriptions.PlannerGraphRewritable Interface to allowRelationalExpression
s to rewrite their own graph representation. -
Class Summary Class Description AbstractPlannerGraph<N extends AbstractPlannerGraph.AbstractNode,E extends AbstractPlannerGraph.AbstractEdge> The planner graph class.AbstractPlannerGraph.AbstractEdge Edge class.AbstractPlannerGraph.AbstractNode Node class functioning as parent for all nodes in the network.AbstractPlannerGraph.PlannerGraphBuilder<N extends AbstractPlannerGraph.AbstractNode,E extends AbstractPlannerGraph.AbstractEdge,B extends AbstractPlannerGraph<N,E>> Builder class for planner graph.DotExporter<N extends PlannerGraph.Node,E extends PlannerGraph.Edge> Exports a graph into a DOT file.GmlExporter<N extends PlannerGraph.Node,E extends PlannerGraph.Edge> Exports a graph into a DOT file.GraphExporter<N,E> Exports a graph into a DOT file.GraphExporter.Cluster<N,E> This class represents a cluster with the additional ability to further subdivide the cluster into sub-clusters.NodeIcon NodeIcon Ids.NodeInfo Explanatory information about the Record Layer's plan operators and storage objects.PlannerGraph Lightweight class to save some boilerplate.PlannerGraph.DataNodeWithInfo Node class for data objects.PlannerGraph.Edge Edge class.PlannerGraph.ExistentialQuantifierEdge Edge class for existential quantifiers.PlannerGraph.ExpressionRefHeadNode Node class for GroupExpressionRefs -- head.PlannerGraph.ExpressionRefMemberNode Node class for GroupExpressionRefs - member.PlannerGraph.ForEachQuantifierEdge Edge class for for-each quantifiers.PlannerGraph.GroupExpressionRefEdge Edge class for GroupExpressionRefs.PlannerGraph.GroupExpressionRefInternalEdge Edge class for GroupExpressionRefs.PlannerGraph.InternalPlannerGraphBuilder Specific builder for explain planner graph building.PlannerGraph.LogicalOperatorNode Node class for logical operators.PlannerGraph.LogicalOperatorNodeWithInfo Node class for logical operators that also have aNodeInfo
.PlannerGraph.Node Node class functioning as parent for any nodes in the network.PlannerGraph.NodeWithInfo Node class that additionally captures a reference to aNodeInfo
.PlannerGraph.OperatorNodeWithInfo Node class for actual plan operators.PlannerGraph.PartialMatchEdge Edge class for matches that connect a query reference to a match candidate reference.PlannerGraph.PhysicalQuantifierEdge Edge class for for-each quantifiers.PlannerGraphProperty Class to hold a graph for explain, optimization, and rewrite purposes.PlannerGraphProperty.NamedCluster Class to represent an actual sub cluster of inside the planner graph.