package
9.0.0-alpha+incompatible
Repository: https://github.com/pingcap/tidb.git
Documentation: pkg.go.dev
# Functions
AppendAddSelectionTraceStep appends a trace step for adding a selection operator.
AppendTableDualTraceStep appends a trace step for replacing a plan with a dual table.
BuildLogicalJoinSchema builds the schema for join operator.
CanPushToCopImpl checks whether the logical plan can be pushed to coprocessor.
Conds2TableDual builds a LogicalTableDual if cond is constant false or null.
DeriveOtherConditions given a LogicalJoin, check the OtherConditions to see if we can derive more conditions for left/right child pushdown.
HasMaxOneRow returns if the LogicalPlan will output at most one row.
IsSupportedSelectLockType checks if the lockType is supported to acquire pessimsitic locks if necessary.
NewBaseLogicalPlan is the basic constructor of BaseLogicalPlan.
# Constants
AntiLeftOuterSemiJoin means if row a in table A matches some rows in B, output (a, false), otherwise, output (a, true).
AntiSemiJoin means if row a in table A does not match any row in B, then output a.
InnerJoin means inner join.
LeftOuterJoin means left join.
LeftOuterSemiJoin means if row a in table A matches some rows in B, output (a, true), otherwise, output (a, false).
RightOuterJoin means right join.
SemiJoin means if row a in table A matches some rows in B, just output a.
# Structs
BaseLogicalPlan is the common structure that used in logical plan.
CTEClass holds the information and plan for a CTE.
DataSource represents a tableScan without condition push down.
FrameBound is the boundary of a frame.
LogicalAggregation represents an aggregate plan.
LogicalApply gets one row from outer executor and gets one row from inner executor according to outer row.
LogicalCTE is for CTE.
LogicalCTETable is for CTE table.
LogicalExpand represents a logical Expand OP serves for data replication requirement.
LogicalIndexScan is the logical index scan operator for TiKV.
LogicalJoin is the logical join plan.
LogicalLimit represents offset and limit plan.
LogicalLock represents a select lock plan.
LogicalMaxOneRow checks if a query returns no more than one row.
LogicalMemTable represents a memory table or virtual table Some memory tables wants to take the ownership of some predications e.g SELECT * FROM cluster_log WHERE type='tikv' AND address='192.16.5.32' Assume that the table `cluster_log` is a memory table, which is used to retrieve logs from remote components.
LogicalPartitionUnionAll represents the LogicalUnionAll plan is for partition table.
LogicalProjection represents a select fields plan.
LogicalSchemaProducer stores the schema for the logical plans who can produce schema directly.
LogicalSelection represents a where or having predicate.
LogicalSequence is used to mark the CTE producer in the main query tree.
LogicalShow represents a show plan.
LogicalShowDDLJobs is for showing DDL job list.
LogicalSort stands for the order by plan.
LogicalTableDual represents a dual table plan.
LogicalTableScan is the logical table scan operator for TiKV.
LogicalTopN represents a top-n plan.
LogicalUnionAll represents LogicalUnionAll plan.
LogicalUnionScan is used in non read-only txn or for scanning a local temporary table whose snapshot data is located in memory.
LogicalWindow represents a logical window function plan.
ShowContents stores the contents for the `SHOW` statement.
TiKVSingleGather is a leaf logical operator of TiDB layer to gather tuples from TiKV regions.
WindowFrame represents a window function frame.
# Type aliases
JoinType contains CrossJoin, InnerJoin, LeftOuterJoin, RightOuterJoin, SemiJoin, AntiJoin.