diff --git a/src/storage/high_availability/ob_transfer_struct.cpp b/src/storage/high_availability/ob_transfer_struct.cpp index b9f44b14ef..6fa1d85662 100644 --- a/src/storage/high_availability/ob_transfer_struct.cpp +++ b/src/storage/high_availability/ob_transfer_struct.cpp @@ -48,7 +48,6 @@ bool ObTXStartTransferOutInfo::is_valid() const return src_ls_id_.is_valid() && dest_ls_id_.is_valid() && !tablet_list_.empty() - && data_end_scn_.is_valid() && transfer_epoch_ > 0; } diff --git a/src/storage/tablet/ob_tablet_start_transfer_mds_helper.cpp b/src/storage/tablet/ob_tablet_start_transfer_mds_helper.cpp index 2581b277e9..1a4488fcab 100644 --- a/src/storage/tablet/ob_tablet_start_transfer_mds_helper.cpp +++ b/src/storage/tablet/ob_tablet_start_transfer_mds_helper.cpp @@ -747,7 +747,7 @@ int ObTabletStartTransferOutV2Helper::on_register( LOG_WARN("on register start transfer out tx get invalid argument", KR(ret), KP(buf), K(len)); } else if (CLICK_FAIL(info.deserialize(buf, len, pos))) { LOG_WARN("failed to deserialize tx start transfer out tx info", KR(ret), K(len), K(pos)); - } else if (!info.is_valid()) { + } else if (!info.is_valid() || !info.data_end_scn_.is_valid()) { ret = OB_ERR_UNEXPECTED; LOG_WARN("tx start transfer out tx info is unexpected", KR(ret), K(info)); } else if (OB_FAIL(MTL(ObLSService*)->get_ls(info.src_ls_id_, ls_handle, ObLSGetMod::STORAGE_MOD))) { @@ -803,7 +803,7 @@ int ObTabletStartTransferOutV2Helper::on_replay(const char *buf, LOG_WARN("on replay start transfer out tx get invalid argument", KR(ret), KP(buf), K(len)); } else if (CLICK_FAIL(info.deserialize(buf, len, pos))) { LOG_WARN("failed to deserialize tx start transfer out tx info", KR(ret), K(len), K(pos)); - } else if (!info.is_valid()) { + } else if (!info.is_valid() || !info.data_end_scn_.is_valid()) { ret = OB_ERR_UNEXPECTED; LOG_WARN("tx start transfer out tx info is unexpected", KR(ret), K(info)); } else if (OB_FAIL(MTL(ObLSService*)->get_ls(info.src_ls_id_, ls_handle, ObLSGetMod::STORAGE_MOD))) {