call enable_ls_to_read in another func

This commit is contained in:
obdev
2023-08-03 07:12:18 +00:00
committed by ob-robot
parent a240652d45
commit 7d7b5f5e28
4 changed files with 16 additions and 47 deletions

View File

@ -1486,7 +1486,7 @@ int ObLS::finish_slog_replay()
} else if (OB_FAIL(load_ls_inner_tablet())) {
LOG_WARN("ls load inner tablet failed", K(ret), KPC(this));
} else {
// do nothing
ls_tablet_svr_.enable_to_read();
}
return ret;
}

View File

@ -172,24 +172,22 @@ int ObServerCheckpointSlogHandler::try_write_checkpoint_for_compat()
bool need_svr_ckpt = false;
for (int64_t i = 0; OB_SUCC(ret) && i < tenant_metas.size(); ++i) {
ObTenantSuperBlock &super_block = tenant_metas.at(i).super_block_;
MTL_SWITCH(super_block.tenant_id_) {
ObTenantCheckpointSlogHandler *tenant_ckpt_handler = MTL(ObTenantCheckpointSlogHandler*);
if (!super_block.is_old_version()) {
// nothing to do.
} else if (OB_FAIL(tenant_ckpt_handler->write_checkpoint(true/*is_force*/))) {
LOG_WARN("fail to write tenant slog checkpoint", K(ret));
} else {
// we don't write checkpoint or update super_block for hidden tenant
// so it is necessary to update version here
if (super_block.is_hidden_) {
super_block.version_ = ObTenantSuperBlock::TENANT_SUPER_BLOCK_VERSION;
omt::ObTenant *tenant = static_cast<omt::ObTenant*>(share::ObTenantEnv::get_tenant());
tenant->set_tenant_super_block(super_block);
if (!super_block.is_old_version()) {
// nothing to do.
} else {
MTL_SWITCH(super_block.tenant_id_) {
if (OB_FAIL(MTL(ObTenantCheckpointSlogHandler*)->write_checkpoint(true/*is_force*/))) {
LOG_WARN("fail to write tenant slog checkpoint", K(ret));
} else {
// we don't write checkpoint or update super_block for hidden tenant
// so it is necessary to update version here
if (super_block.is_hidden_) {
super_block.version_ = ObTenantSuperBlock::TENANT_SUPER_BLOCK_VERSION;
omt::ObTenant *tenant = static_cast<omt::ObTenant*>(share::ObTenantEnv::get_tenant());
tenant->set_tenant_super_block(super_block);
}
need_svr_ckpt = true;
}
need_svr_ckpt = true;
}
if (OB_SUCC(ret) && OB_FAIL(tenant_ckpt_handler->enable_ls_read())) {
LOG_WARN("fail to enable ls to read", K(ret));
}
}
}

View File

@ -837,33 +837,6 @@ int ObTenantCheckpointSlogHandler::replay_create_tablets_per_task(
return ret;
}
int ObTenantCheckpointSlogHandler::enable_ls_read()
{
int ret = OB_SUCCESS;
common::ObSharedGuard<ObLSIterator> ls_iter;
ObLS *ls = nullptr;
if (OB_FAIL(MTL(ObLSService *)->get_ls_iter(ls_iter, ObLSGetMod::STORAGE_MOD))) {
LOG_WARN("fail to get log stream iter", K(ret));
} else {
while (OB_SUCC(ret)) {
if (OB_FAIL(ls_iter->get_next(ls))) {
if (OB_ITER_END == ret) {
ret = OB_SUCCESS;
break;
} else {
LOG_WARN("fail to get next log stream", K(ret));
}
} else {
ObLSLockGuard lock_ls(ls);
ls->enable_to_read();
}
}
}
return ret;
}
int ObTenantCheckpointSlogHandler::report_slog(
const ObTabletMapKey &tablet_key,
const ObMetaDiskAddr &slog_addr)

View File

@ -131,8 +131,6 @@ public:
void stop();
void wait();
void destroy();
int enable_ls_read();
int report_slog(const ObTabletMapKey &tablet_key, const ObMetaDiskAddr &slog_addr);
int check_slog(const ObTabletMapKey &tablet_key, bool &has_slog);
int read_tablet_checkpoint_by_addr(