[4.1][tx-route] fix tx abort miss return part state
This commit is contained in:
parent
d2f227903e
commit
5f602ed6c4
@ -164,6 +164,9 @@ int ObMPUtils::sync_session_info(sql::ObSQLSessionInfo &sess, const common::ObSt
|
||||
succ_info_types.add_member(info_type);
|
||||
LOG_DEBUG("sync-session-info", K(info_type), K(info_len));
|
||||
}
|
||||
if (OB_FAIL(ret)) {
|
||||
sess.post_sync_session_info();
|
||||
}
|
||||
}
|
||||
|
||||
return ret;
|
||||
|
@ -558,9 +558,9 @@ int ObTransService::abort_tx_(ObTxDesc &tx, const int cause, const bool cleanup)
|
||||
TRANS_LOG(WARN, "try abort tx which has decided",
|
||||
K(ret), K(tx), K(cause));
|
||||
} else {
|
||||
// TODO: refactor state switch and put this to there
|
||||
if (ObTxDesc::State::IDLE == tx.state_) {
|
||||
tx.state_change_flags_.STATIC_CHANGED_ = 1;
|
||||
// for tx free route, when switch from idle to abort, same as tx actived
|
||||
tx.state_change_flags_.mark_all();
|
||||
}
|
||||
tx.state_ = ObTxDesc::State::IN_TERMINATE;
|
||||
tx.abort_cause_ = cause;
|
||||
|
Loading…
x
Reference in New Issue
Block a user