disable block scan with scn output
This commit is contained in:
@ -526,20 +526,19 @@ int ObTscCgService::generate_pd_storage_flag(const ObLogPlan *log_plan,
|
|||||||
// pushdown filter only support scan now
|
// pushdown filter only support scan now
|
||||||
if (pd_blockscan) {
|
if (pd_blockscan) {
|
||||||
if (log_op_def::LOG_TABLE_SCAN == op_type) {
|
if (log_op_def::LOG_TABLE_SCAN == op_type) {
|
||||||
} else if (log_op_def::LOG_TABLE_LOOKUP == op_type) {
|
|
||||||
pd_blockscan = false;
|
|
||||||
} else {
|
} else {
|
||||||
pd_blockscan = false;
|
pd_blockscan = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
LOG_DEBUG("chaser debug pd block", K(op_type), K(pd_blockscan));
|
||||||
if (!pd_blockscan) {
|
if (!pd_blockscan) {
|
||||||
pd_filter = false;
|
pd_filter = false;
|
||||||
}
|
} else {
|
||||||
LOG_DEBUG("chaser debug pd block", K(op_type), K(pd_blockscan));
|
FOREACH_CNT_X(e, access_exprs, pd_blockscan || pd_filter) {
|
||||||
|
if (T_ORA_ROWSCN == (*e)->get_expr_type()) {
|
||||||
if (pd_filter) {
|
pd_blockscan = false;
|
||||||
FOREACH_CNT_X(e, access_exprs, pd_filter) {
|
pd_filter = false;
|
||||||
if (T_ORA_ROWSCN != (*e)->get_expr_type()) {
|
} else {
|
||||||
auto col = static_cast<ObColumnRefRawExpr *>(*e);
|
auto col = static_cast<ObColumnRefRawExpr *>(*e);
|
||||||
if (col->is_virtual_generated_column() || col->is_lob_column()) {
|
if (col->is_virtual_generated_column() || col->is_lob_column()) {
|
||||||
pd_filter = false;
|
pd_filter = false;
|
||||||
|
|||||||
Reference in New Issue
Block a user