[FEAT MERGE] [CP] Improve the rowcount estimation
Co-authored-by: akaError <lzg020616@163.com>
This commit is contained in:
		| @ -550,6 +550,7 @@ int ObOptimizer::extract_opt_ctx_basic_flags(const ObDMLStmt &stmt, ObSQLSession | ||||
|   bool has_subquery_in_function_table = false; | ||||
|   bool has_dblink = false; | ||||
|   bool force_serial_set_order = false; | ||||
|   bool storage_estimation_enabled = false; | ||||
|   bool has_cursor_expr = false; | ||||
|   int64_t link_stmt_count = 0; | ||||
|   omt::ObTenantConfigGuard tenant_config(TENANT_CONF(session.get_effective_tenant_id())); | ||||
| @ -575,7 +576,10 @@ int ObOptimizer::extract_opt_ctx_basic_flags(const ObDMLStmt &stmt, ObSQLSession | ||||
|     LOG_WARN("fail to check rowsets enabled", K(ret)); | ||||
|   } else if (OB_FAIL(stmt.check_has_cursor_expression(has_cursor_expr))) { | ||||
|     LOG_WARN("fail to check cursor expression info", K(ret)); | ||||
|   } else if (OB_FAIL(session.is_storage_estimation_enabled(storage_estimation_enabled))) { | ||||
|     LOG_WARN("fail to get storage_estimation_enabled", K(ret)); | ||||
|   } else { | ||||
|     ctx_.set_storage_estimation_enabled(storage_estimation_enabled); | ||||
|     ctx_.set_serial_set_order(force_serial_set_order); | ||||
|     ctx_.set_has_multiple_link_stmt(link_stmt_count > 1); | ||||
|     ctx_.set_has_var_assign(has_var_assign); | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 xianyu-w
					xianyu-w