From 68bf34f035b9dd5aea6f068331b563eb15bb4b1c Mon Sep 17 00:00:00 2001 From: fengdeyiji <546976189@qq.com> Date: Wed, 28 Jun 2023 10:18:03 +0000 Subject: [PATCH] [MDS] fix ERROR log in compat case --- src/storage/tx/ob_trans_define.cpp | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/storage/tx/ob_trans_define.cpp b/src/storage/tx/ob_trans_define.cpp index bcdacca6e..00d3285dc 100755 --- a/src/storage/tx/ob_trans_define.cpp +++ b/src/storage/tx/ob_trans_define.cpp @@ -1087,10 +1087,17 @@ void ObTxExecInfo::mrege_buffer_ctx_array_to_multi_data_source() const ObTxBufferCtxArray &mds_buffer_ctx_array = const_cast(mds_buffer_ctx_array_); TRANS_LOG_RET(INFO, OB_SUCCESS, "merge deserialized buffer ctx to multi_data_source", K(mds_buffer_ctx_array), K(multi_data_source)); if (mds_buffer_ctx_array.count() != multi_data_source.count()) { - TRANS_LOG_RET(ERROR, OB_ERR_UNEXPECTED, - "mds buffer ctx array size not equal to multi data source array size" - ", destroy deserialized mds_buffer_ctx_array directly", - K(multi_data_source), K(mds_buffer_ctx_array), K(*this)); + if (mds_buffer_ctx_array.count() == 0) {// 4.1 -> 4.2 compat case + TRANS_LOG_RET(WARN, OB_ERR_UNEXPECTED, + "mds buffer ctx array size not equal to multi data source array size" + ", destroy deserialized mds_buffer_ctx_array directly", + K(multi_data_source), K(mds_buffer_ctx_array), K(*this)); + } else { + TRANS_LOG_RET(ERROR, OB_ERR_UNEXPECTED, + "mds buffer ctx array size not equal to multi data source array size" + ", destroy deserialized mds_buffer_ctx_array directly", + K(multi_data_source), K(mds_buffer_ctx_array), K(*this)); + } for (int64_t idx = 0; idx < mds_buffer_ctx_array.count(); ++idx) { mds_buffer_ctx_array[idx].destroy_ctx(); }