diff --git a/src/storage/tx/ob_ctx_tx_data.cpp b/src/storage/tx/ob_ctx_tx_data.cpp index 3ec3a7143d0a4a3b3e5cc792395d17b7e6bff846..39ce29c8efd6563559d60294a91e4ca6cf3b8f5e 100644 --- a/src/storage/tx/ob_ctx_tx_data.cpp +++ b/src/storage/tx/ob_ctx_tx_data.cpp @@ -435,10 +435,11 @@ int ObCtxTxData::add_undo_action(ObUndoAction &undo_action, storage::ObUndoStatu int ObCtxTxData::Guard::get_tx_data(const ObTxData *&tx_data) const { int ret = OB_SUCCESS; - if (NULL == host_.tx_data_) { + auto tmp_tx_data = host_.tx_data_; + if (NULL == tmp_tx_data) { ret = OB_TRANS_CTX_NOT_EXIST; } else { - tx_data = host_.tx_data_; + tx_data = tmp_tx_data; } return ret; }