fix: fix ddl hang induced by check_status in inner sql execution

This commit is contained in:
obdev
2023-01-28 19:55:42 +08:00
committed by ob-robot
parent 1554aaac9e
commit c19499253b
2 changed files with 3 additions and 3 deletions

View File

@ -153,8 +153,6 @@ int ObInnerSQLResult::open()
LOG_WARN("open result set failed", K(ret));
// move after precess_retry().
// result_set_->close();
} else if (has_tenant_resource() && OB_FAIL(result_set_->get_exec_context().check_status())) {
LOG_WARN("failed check status", K(ret));
} else if (is_read_&& is_select) {
//prefetch 1 row for throwing error code and retry
opened_ = true;

View File

@ -303,7 +303,9 @@ int ForeignKeyHandle::cascade(ObTableModifyOp &op,
int64_t where_pos = 0;
const ObString &database_name = fk_arg.database_name_;
const ObString &table_name = fk_arg.table_name_;
if (old_row.empty()) {
if (OB_FAIL(op.get_exec_ctx().check_status())) {
LOG_WARN("failed check status", K(ret));
} else if (old_row.empty()) {
ret = OB_INVALID_ARGUMENT;
LOG_WARN("old row is invalid", K(ret));
} else if (OB_FAIL(gen_where(op.get_eval_ctx(), where_buf, where_len, where_pos,