[FEAT MERGE] optimizer statistics gather enhance

Co-authored-by: Larry955 <1412857955@qq.com>
Co-authored-by: wangt1xiuyi <13547954130@163.com>
This commit is contained in:
obdev
2023-04-28 13:11:58 +00:00
committed by ob-robot
parent 35c1be5aa1
commit 642f1c7d84
130 changed files with 8572 additions and 1563 deletions

View File

@ -503,7 +503,6 @@ int ObLogDelUpd::find_pdml_part_id_producer(ObLogicalOperator &op,
producer = &op;
}
} else if (op.get_type() == log_op_def::LOG_TABLE_SCAN) {
// PDML partition id expr在table scan分配的逻辑
// pdml table scan分配partition id expr的producer
// table scan中分配partition id expr的producer的逻辑比较特殊:
@ -521,14 +520,12 @@ int ObLogDelUpd::find_pdml_part_id_producer(ObLogicalOperator &op,
// 其会被裁剪掉,因此目前insert与subplan之间会添加一个EX算子.
// 后期会进行优化,如果insert与subplan是一个full partition wise
// join,那么就在insert算子上分配一个GI算子,目前先使用在subplan上分配EX算子的方式实现
ObLogTableScan &tsc = static_cast<ObLogTableScan &>(op);
if (tid
== (tsc.get_is_index_global() ? tsc.get_index_table_id() : tsc.get_ref_table_id())) {
producer = &op;
}
}
for (int64_t i = 0; OB_SUCC(ret) && NULL == producer && i < op.get_num_of_child(); i++) {
if (OB_ISNULL(op.get_child(i))) {
ret = OB_ERR_UNEXPECTED;