diff --git a/src/observer/mysql/obmp_packet_sender.cpp b/src/observer/mysql/obmp_packet_sender.cpp index 556f9b20aa..425981742c 100644 --- a/src/observer/mysql/obmp_packet_sender.cpp +++ b/src/observer/mysql/obmp_packet_sender.cpp @@ -659,9 +659,14 @@ int ObMPPacketSender::send_ok_packet(ObSQLSessionInfo &session, ObOKPParam &ok_p if (OB_SUCC(ret) && OB_FAIL(alloc_ezbuf())) { LOG_WARN("ez_buf_ alloc failed", K(ret)); } - if (OB_SUCC(ret) && conn_->is_support_sessinfo_sync() && proto20_context_.is_proto20_used_) { + // calc txn free route info if multi-stmt has stop execution + if (OB_SUCC(ret) + && !ok_param.has_more_result_ + && conn_->is_support_sessinfo_sync() + && proto20_context_.is_proto20_used_) { + LOG_DEBUG("calc txn free route info", K(session)); if (OB_FAIL(session.calc_txn_free_route())) { - SERVER_LOG(WARN, "fail calculate txn free route info", K(ret)); + SERVER_LOG(WARN, "fail calculate txn free route info", K(ret), K(session.get_sessid())); } } if (OB_SUCC(ret)) { diff --git a/src/observer/mysql/obmp_utils.cpp b/src/observer/mysql/obmp_utils.cpp index 1bc6c7053d..b4a431b836 100644 --- a/src/observer/mysql/obmp_utils.cpp +++ b/src/observer/mysql/obmp_utils.cpp @@ -151,7 +151,7 @@ int ObMPUtils::sync_session_info(sql::ObSQLSessionInfo &sess, const common::ObSt (oceanbase::sql::SessionSyncInfoType)(info_type), buf, (int64_t)info_len + pos0, pos0))) { LOG_WARN("failed to update session sync info", - K(ret), K(info_type), K(succ_info_types), K(pos), K(info_len), K(info_len+pos)); + K(ret), K(info_type), K(sess.get_sessid()), K(succ_info_types), K(pos), K(info_len), K(info_len+pos)); } else { pos += info_len; }