[BUG.FIX] fix infinite loop in ObTmpTenantMemBlockManager::wait_write_finish()

This commit is contained in:
Tyshawn
2023-08-04 03:24:22 +00:00
committed by ob-robot
parent 82e3f02450
commit 8984490f92

View File

@ -1463,6 +1463,10 @@ int ObTmpTenantMemBlockManager::exec_wait()
const int64_t free_page_nums = blk.get_free_page_nums();
if (OB_FAIL(wait_info->exec_wait(io_timeout_ms))) {
STORAGE_LOG(WARN, "fail to exec io handle wait", K(ret), K_(tenant_id), KPC(wait_info));
int tmp_ret = OB_SUCCESS;
if (OB_TMP_FAIL(blk.check_and_set_status(ObTmpMacroBlock::WASHING, ObTmpMacroBlock::MEMORY))) {
STORAGE_LOG(ERROR, "fail to rollback block status", K(ret), K(tmp_ret), K(block_id), K(blk));
}
} else {
STORAGE_LOG(INFO, "start to wash a block", K(block_id), KPC(&blk));
ObThreadCondGuard cond_guard(cond_);