tmp file flush mgr ignores any error code from iterator
This commit is contained in:
parent
02c4c0e219
commit
bacde7e6b6
@ -277,12 +277,13 @@ int ObTmpFileFlushListIterator::cache_files_(const FlushCtxState iter_stage)
|
||||
}
|
||||
|
||||
if (OB_FAIL(ret)) {
|
||||
cached_file_num_ = 0; // to guarantee that the iterator must not reinsert cached part files into priority list
|
||||
int tmp_ret = OB_SUCCESS;
|
||||
for (int64_t i = 0; OB_LIKELY(OB_SUCCESS == tmp_ret) && i < file_handles.count(); ++i) {
|
||||
if (OB_ISNULL(file_handles[i].get())) {
|
||||
// could not happen, just skip
|
||||
} else if (OB_TMP_FAIL(file_handles[i].get()->reinsert_flush_node(cur_caching_list_is_meta_))) {
|
||||
LOG_WARN("fail to reinsert flush node", KR(tmp_ret), K(i), K(file_handles[i]));
|
||||
LOG_ERROR("fail to reinsert flush node", KR(tmp_ret), K(i), K(file_handles[i]));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -452,6 +452,9 @@ int ObTmpFileFlushManager::inner_fill_block_buf_(
|
||||
if (OB_ITER_END != ret) {
|
||||
STORAGE_LOG(WARN, "fail to get file from iterator",
|
||||
KR(ret), K(flush_stage), K(is_meta), K(flush_tail), K(flush_ctx_));
|
||||
// it is no need to process the error code of iterator. it will handle with problem by itself.
|
||||
// just using OB_ITER_END to finish this flushing loop is enough
|
||||
ret = OB_ITER_END;
|
||||
}
|
||||
} else if (OB_ISNULL(file_handle.get())) {
|
||||
ret = OB_ERR_UNEXPECTED;
|
||||
|
Loading…
x
Reference in New Issue
Block a user