[CP] set ObProhibitScheduleMediumMap from log stream level to tablet level

This commit is contained in:
obdev
2024-02-07 04:32:02 +00:00
committed by ob-robot
parent 7746c06692
commit a8b7fa56bb
6 changed files with 252 additions and 130 deletions

View File

@ -752,6 +752,28 @@ int ObTransferTaskInfo::assign(const ObTransferTaskInfo &task_info)
return ret;
}
int ObTransferTaskInfo::fill_tablet_ids(ObIArray<ObTabletID> &tablet_ids) const
{
int ret = OB_SUCCESS;
if (OB_UNLIKELY(!tablet_ids.empty())) {
ret = OB_INVALID_ARGUMENT;
LOG_WARN("invalid argument, tablet_ids should be empty", K(ret));
} else if (OB_FAIL(tablet_ids.reserve(tablet_list_.count()))) {
LOG_WARN("failed to reserve tablet_ids", K(ret));
} else {
FOREACH_X(it, tablet_list_, OB_SUCC(ret)) {
const ObTabletID &tablet_id = it->tablet_id();
if (OB_UNLIKELY(!tablet_id.is_valid())) {
ret = OB_INVALID_ARGUMENT;
LOG_WARN("invalid tablet id", K(ret), K(tablet_id));
} else if (OB_FAIL(tablet_ids.push_back(tablet_id))) {
LOG_WARN("failed to push back tablet_id", K(ret), K(tablet_id));
}
}
}
return ret;
}
int ObTransferLockUtil::lock_tablet_on_dest_ls_for_table_lock(
ObMySQLTransaction &trans,
const uint64_t tenant_id,