[#54380548]change for update skip locked cursor to stream mode

This commit is contained in:
seuwebber
2024-02-09 12:37:20 +00:00
committed by ob-robot
parent 53291d066b
commit d0fea03ca8
12 changed files with 91 additions and 27 deletions

View File

@ -257,7 +257,8 @@ public:
ps_sql_(),
is_bulk_(false),
has_dup_column_name_(false),
has_link_table_(false)
has_link_table_(false),
is_skip_locked_(false)
{}
stmt::StmtType type_; //prepare的语句类型
bool for_update_;
@ -273,6 +274,7 @@ public:
bool is_bulk_;
bool has_dup_column_name_;
bool has_link_table_;
bool is_skip_locked_;
};
struct PLPrepareCtx
@ -499,7 +501,8 @@ public:
int64_t cursor_index,
const int64_t *formal_param_idxs,
const ObSqlExpression **actual_param_exprs,
int64_t cursor_param_count);
int64_t cursor_param_count,
bool skip_locked);
static int dbms_cursor_open(pl::ObPLExecCtx *ctx,
pl::ObDbmsCursorInfo &cursor,
const ObString &ps_sql,
@ -696,7 +699,8 @@ public:
stmt::StmtType &type,
bool &for_update,
bool &hidden_rowid,
int64_t &into_cnt);
int64_t &into_cnt,
bool &skip_locked);
static int prepare_dynamic(pl::ObPLExecCtx *ctx,
ObIAllocator &allocator,
bool is_returning,
@ -708,6 +712,7 @@ public:
bool &for_update,
bool &hidden_rowid,
int64_t &into_cnt,
bool &skip_locked,
common::ColumnsFieldArray *field_list = NULL);
static int force_refresh_schema(uint64_t tenant_id);