[FEAT MERGE]4.2 PX Feature

This commit is contained in:
qianchanger
2023-04-30 04:41:31 +00:00
committed by ob-robot
parent 09ed904b58
commit 3ae36f5774
134 changed files with 10295 additions and 1480 deletions

View File

@ -20,7 +20,8 @@
#include "sql/engine/ob_physical_plan.h"
#include "sql/engine/ob_exec_context.h"
#include "sql/engine/px/ob_dfo.h"
#include "sql/engine/px/ob_px_sqc_handler.h"
#include "share/detect/ob_detect_manager_utils.h"
namespace oceanbase
{
using namespace common;
@ -341,6 +342,19 @@ int ObTempTableInsertOp::insert_chunk_row_store()
dtl::ObDTLIntermResultManager::getInstance().erase_interm_result_info(dtl_int_key);
} else {
row_store->datum_store_->reset_callback();
ObPxSqcHandler *handler = ctx_.get_sqc_handler();
if (MY_SPEC.is_distributed_ && OB_NOT_NULL(handler) && handler->get_phy_plan().is_enable_px_fast_reclaim()) {
int reg_dm_ret = ObDetectManagerUtils::temp_table_register_check_item_into_dm(
handler->get_sqc_init_arg().sqc_.get_px_detectable_ids().qc_detectable_id_,
handler->get_sqc_init_arg().sqc_.get_qc_addr(),
dtl_int_key, row_store);
if (OB_SUCCESS != reg_dm_ret) {
LOG_WARN("[DM] failed register_check_item_into_dm", K(dtl_int_key), K(dtl_int_key));
}
LOG_TRACE("[DM] temptable register a check item", K(reg_dm_ret), K(dtl_int_key),
K(handler->get_sqc_init_arg().sqc_.get_px_detectable_ids().qc_detectable_id_),
K(handler->get_sqc_init_arg().sqc_.get_qc_addr()));
}
}
}
}

View File

@ -164,6 +164,17 @@ int ObTempTableTransformationOp::destory_interm_results()
}
}
}
#ifdef ERRSIM
ObSQLSessionInfo *session = ctx_.get_my_session();
int64_t query_timeout = 0;
session->get_query_timeout(query_timeout);
if (OB_FAIL(OB_E(EventTable::EN_PX_TEMP_TABLE_NOT_DESTROY_REMOTE_INTERM_RESULT) OB_SUCCESS)) {
LOG_WARN("ObTempTableTransformationOp not destory_remote_interm_results by design", K(ret), K(query_timeout));
return OB_SUCCESS;
}
#endif
if (OB_SUCC(ret) && !svrs.empty() &&
OB_FAIL(destory_remote_interm_results(svrs, args))) {
LOG_WARN("failed to destory interm results", K(ret));