add tablet migration perf stats event
This commit is contained in:
@ -2483,6 +2483,7 @@ int ObTabletMigrationTask::generate_tablet_finish_migration_task_(
|
||||
int ret = OB_SUCCESS;
|
||||
ObTabletMigrationDag *tablet_migration_dag = nullptr;
|
||||
ObLS *ls = nullptr;
|
||||
const int64_t task_gen_time = ObTimeUtility::current_time();
|
||||
if (OB_NOT_NULL(tablet_finish_migration_task)) {
|
||||
ret = OB_ERR_UNEXPECTED;
|
||||
LOG_WARN("tablet finish migration task must not be null", K(ret), KPC(tablet_finish_migration_task));
|
||||
@ -2491,7 +2492,7 @@ int ObTabletMigrationTask::generate_tablet_finish_migration_task_(
|
||||
LOG_WARN("failed to alloc tablet finish task", K(ret), KPC(ctx_));
|
||||
} else if (OB_FAIL(tablet_migration_dag->get_ls(ls))) {
|
||||
LOG_WARN("failed to get ls", K(ret), KPC(ctx_));
|
||||
} else if (OB_FAIL(tablet_finish_migration_task->init(*copy_tablet_ctx_, *ls))) {
|
||||
} else if (OB_FAIL(tablet_finish_migration_task->init(task_gen_time, copy_table_key_array_.count(), *copy_tablet_ctx_, *ls))) {
|
||||
LOG_WARN("failed to init tablet copy finish task", K(ret), KPC(ctx_), KPC(copy_tablet_ctx_));
|
||||
} else {
|
||||
LOG_INFO("generate tablet migration finish task", "ls_id", ls->get_ls_id().id(), "tablet_id", copy_tablet_ctx_->tablet_id_);
|
||||
@ -2964,6 +2965,8 @@ int ObTabletMigrationTask::check_tablet_replica_validity_(const common::ObTablet
|
||||
ObTabletFinishMigrationTask::ObTabletFinishMigrationTask()
|
||||
: ObITask(TASK_TYPE_MIGRATE_PREPARE),
|
||||
is_inited_(false),
|
||||
task_gen_time_(0),
|
||||
copy_table_count_(0),
|
||||
copy_tablet_ctx_(nullptr),
|
||||
ls_(nullptr)
|
||||
{
|
||||
@ -2973,7 +2976,9 @@ ObTabletFinishMigrationTask::~ObTabletFinishMigrationTask()
|
||||
{
|
||||
}
|
||||
|
||||
int ObTabletFinishMigrationTask::init(ObCopyTabletCtx &ctx, ObLS &ls)
|
||||
int ObTabletFinishMigrationTask::init(
|
||||
const int64_t task_gen_time, const int64_t copy_table_count,
|
||||
ObCopyTabletCtx &ctx, ObLS &ls)
|
||||
{
|
||||
int ret = OB_SUCCESS;
|
||||
if (is_inited_) {
|
||||
@ -2984,6 +2989,8 @@ int ObTabletFinishMigrationTask::init(ObCopyTabletCtx &ctx, ObLS &ls)
|
||||
LOG_WARN("invalid argument", K(ctx));
|
||||
} else {
|
||||
ha_dag_net_ctx_ = static_cast<ObStorageHADag *>(this->get_dag())->get_ha_dag_net_ctx();
|
||||
task_gen_time_ = task_gen_time;
|
||||
copy_table_count_ = copy_table_count;
|
||||
copy_tablet_ctx_ = &ctx;
|
||||
ls_ = &ls;
|
||||
is_inited_ = true;
|
||||
@ -3039,7 +3046,9 @@ int ObTabletFinishMigrationTask::update_data_and_expected_status_()
|
||||
SERVER_EVENT_ADD("storage_ha", "tablet_finish_migration_task",
|
||||
"tenant_id", MTL_ID(),
|
||||
"ls_id", ls_->get_ls_id().id(),
|
||||
"tablet_id", copy_tablet_ctx_->tablet_id_,
|
||||
"tablet_id", copy_tablet_ctx_->tablet_id_.id(),
|
||||
"sstable_count", copy_table_count_,
|
||||
"cost_time_us", ObTimeUtility::current_time() - task_gen_time_,
|
||||
"expected_status", expected_status);
|
||||
}
|
||||
} else {
|
||||
@ -3064,7 +3073,9 @@ int ObTabletFinishMigrationTask::update_data_and_expected_status_()
|
||||
SERVER_EVENT_ADD("storage_ha", "tablet_finish_migration_task",
|
||||
"tenant_id", MTL_ID(),
|
||||
"ls_id", ls_->get_ls_id().id(),
|
||||
"tablet_id", copy_tablet_ctx_->tablet_id_,
|
||||
"tablet_id", copy_tablet_ctx_->tablet_id_.id(),
|
||||
"sstable_count", copy_table_count_,
|
||||
"cost_time_us", ObTimeUtility::current_time() - task_gen_time_,
|
||||
"data_status", data_status);
|
||||
}
|
||||
}
|
||||
|
@ -397,13 +397,16 @@ class ObTabletFinishMigrationTask final : public share::ObITask
|
||||
public:
|
||||
ObTabletFinishMigrationTask();
|
||||
virtual ~ObTabletFinishMigrationTask();
|
||||
int init(ObCopyTabletCtx &ctx, ObLS &ls);
|
||||
int init(const int64_t task_gen_time, const int64_t copy_table_count,
|
||||
ObCopyTabletCtx &ctx, ObLS &ls);
|
||||
virtual int process() override;
|
||||
VIRTUAL_TO_STRING_KV(K("ObTabletFinishMigrationTask"), KP(this), KPC(ha_dag_net_ctx_), KPC(copy_tablet_ctx_), KPC(ls_));
|
||||
private:
|
||||
int update_data_and_expected_status_();
|
||||
private:
|
||||
bool is_inited_;
|
||||
int64_t task_gen_time_;
|
||||
int64_t copy_table_count_;
|
||||
ObIHADagNetCtx *ha_dag_net_ctx_;
|
||||
ObCopyTabletCtx *copy_tablet_ctx_;
|
||||
ObLS *ls_;
|
||||
|
Reference in New Issue
Block a user