[CP] Fix ps execute location leader not exist not retry
This commit is contained in:
@ -52,7 +52,8 @@ void ObQueryRetryCtrl::test_and_save_retry_state(const ObGlobalContext& gctx, co
|
||||
ObSQLSessionInfo* session = result.get_exec_context().get_my_session();
|
||||
bool expected_stmt = (ObStmt::is_dml_stmt(result.get_stmt_type()) ||
|
||||
ObStmt::is_ddl_stmt(result.get_stmt_type(), result.has_global_variable()) ||
|
||||
ObStmt::is_dcl_stmt(result.get_stmt_type()));
|
||||
ObStmt::is_dcl_stmt(result.get_stmt_type()) ||
|
||||
ObStmt::is_execute_stmt(result.get_stmt_type()));
|
||||
const ObMultiStmtItem& multi_stmt_item = ctx.multi_stmt_item_;
|
||||
if (OB_ISNULL(session)) {
|
||||
client_ret = err; // OOM
|
||||
|
@ -368,9 +368,10 @@ int ObInnerSQLConnection::process_retry(
|
||||
(OB_NOT_MASTER == last_ret || OB_PARTITION_NOT_EXIST == last_ret);
|
||||
ObQueryRetryInfo& retry_info = inner_session_.get_retry_info_for_update();
|
||||
const bool non_blocking_refresh = false;
|
||||
bool repeatable_stmt = (ObStmt::is_dml_stmt(result_set.get_stmt_type()) ||
|
||||
ObStmt::is_ddl_stmt(result_set.get_stmt_type(), result_set.has_global_variable()) ||
|
||||
ObStmt::is_dcl_stmt(result_set.get_stmt_type()));
|
||||
bool repeatable_stmt =
|
||||
(ObStmt::is_dml_stmt(result_set.get_stmt_type()) ||
|
||||
ObStmt::is_ddl_stmt(result_set.get_stmt_type(), result_set.has_global_variable()) ||
|
||||
ObStmt::is_dcl_stmt(result_set.get_stmt_type()) || ObStmt::is_execute_stmt(result_set.get_stmt_type()));
|
||||
int64_t now = ObTimeUtility::current_time();
|
||||
if (now >= abs_timeout_us) {
|
||||
ret = OB_TIMEOUT;
|
||||
|
@ -222,6 +222,11 @@ public:
|
||||
stmt_type == stmt::T_EXPLAIN || is_show_stmt(stmt_type));
|
||||
}
|
||||
|
||||
static inline bool is_execute_stmt(stmt::StmtType stmt_type)
|
||||
{
|
||||
return stmt_type == stmt::T_EXECUTE;
|
||||
}
|
||||
|
||||
static inline bool is_pdml_supported_stmt(stmt::StmtType stmt_type)
|
||||
{
|
||||
return (stmt_type == stmt::T_INSERT || stmt_type == stmt::T_DELETE || stmt_type == stmt::T_UPDATE);
|
||||
|
Reference in New Issue
Block a user