[FEAT MERGE] ddl parallel truncate table

Co-authored-by: obdev <obdev@oceanbase.com>
Co-authored-by: obdev <obdev@oceanbase.com>
Co-authored-by: obdev <obdev@oceanbase.com>
Co-authored-by: obdev <obdev@oceanbase.com>
Co-authored-by: obdev <obdev@oceanbase.com>
This commit is contained in:
obdev
2023-01-28 13:37:56 +08:00
committed by ob-robot
parent a13f63478a
commit b2607a0ccf
77 changed files with 5485 additions and 783 deletions

View File

@ -1298,10 +1298,10 @@ int ObOBJLock::check_op_allow_lock_from_list_(
DLIST_FOREACH_NORET(curr, *op_list) {
switch (lock_op.op_type_) {
case IN_TRANS_DML_LOCK:
case IN_TRANS_LOCK_TABLE_LOCK: {
case IN_TRANS_COMMON_LOCK: {
if (curr->lock_op_.create_trans_id_ == lock_op.create_trans_id_ &&
(curr->lock_op_.op_type_ == IN_TRANS_DML_LOCK ||
curr->lock_op_.op_type_ == IN_TRANS_LOCK_TABLE_LOCK)) {
curr->lock_op_.op_type_ == IN_TRANS_COMMON_LOCK)) {
if (curr->lock_op_.lock_op_status_ != LOCK_OP_DOING) {
// should never be here.
ret = OB_ERR_UNEXPECTED;
@ -1332,6 +1332,9 @@ int ObOBJLock::check_op_allow_lock_from_list_(
ret = OB_TRY_LOCK_ROW_CONFLICT;
has_unlock_op = true;
need_break = true;
} else if (curr->lock_op_.op_type_ == IN_TRANS_COMMON_LOCK &&
curr->lock_op_.create_trans_id_ == lock_op.create_trans_id_) {
// continue
} else {
ret = OB_ERR_UNEXPECTED;
need_break = true;