add log for positioning OB_DISK_CORRUPTED and OB_IO_ERROR replay issue

This commit is contained in:
obdev
2023-02-20 02:44:45 +00:00
committed by ob-robot
parent c987639143
commit 7157cd03d1
2 changed files with 6 additions and 2 deletions

View File

@ -1297,7 +1297,10 @@ bool ObReplayStatus::is_fatal_error(const int ret) const
return (OB_SUCCESS != ret
&& OB_ALLOCATE_MEMORY_FAILED != ret
&& OB_EAGAIN != ret
&& OB_NOT_RUNNING != ret);
&& OB_NOT_RUNNING != ret
// for temporary positioning issue
&& OB_IO_ERROR != ret
&& OB_DISK_CORRUPTED != ret);
}
int ObReplayStatus::submit_task_to_replay_service_(ObReplayServiceTask &task)

View File

@ -712,7 +712,8 @@ int ObTenantIOManager::inner_aio(const ObIOInfo &info, ObIOHandle &handle)
} else if (NULL != detector &&
detector->is_data_disk_has_fatal_error()) { // also consider slog writer hung
ret = OB_DISK_CORRUPTED;
LOG_WARN("data disk has fatal error", K(ret));
// for temporary positioning issue, get lbt of log replay
LOG_DBA_ERROR(OB_DISK_CORRUPTED, "msg", "data disk has fatal error");
} else if (OB_FAIL(alloc_io_request(io_allocator_, callback_size, req))) {
LOG_WARN("alloc io request failed", K(ret), KP(req));
} else if (FALSE_IT(req->tenant_io_mgr_.hold(this))) {