fuse row flag
This commit is contained in:
6
src/share/cache/ob_kvcache_store.cpp
vendored
6
src/share/cache/ob_kvcache_store.cpp
vendored
@ -626,6 +626,12 @@ int ObKVCacheStore::try_flush_washable_mb(
|
||||
// sync wash
|
||||
if (OB_SUCC(ret) && size_washed < size_need_washed) {
|
||||
ret = OB_CACHE_FREE_BLOCK_NOT_ENOUGH;
|
||||
INIT_SUCC(tmp_ret);
|
||||
if (TC_REACH_TIME_INTERVAL(3 * 1000 * 1000/* 3s */)) {
|
||||
if (OB_TMP_FAIL(print_tenant_memblock_info(head))) {
|
||||
COMMON_LOG(WARN, "Fail to print tenant memblock info", K(tmp_ret));
|
||||
}
|
||||
}
|
||||
COMMON_LOG(INFO, "can not find enough memory block to wash", K(ret), K(size_washed), K(size_need_washed));
|
||||
}
|
||||
if (OB_FAIL(ret)) {
|
||||
|
||||
@ -121,7 +121,12 @@ int ObMergeFuser::fuse_row(MERGE_ITER_ARRAY ¯o_row_iters)
|
||||
STORAGE_LOG(WARN, "Invalid macro row iters to fuse row", K(ret), K(macro_row_iters));
|
||||
} else if (OB_FAIL(preprocess_fuse_row(*macro_row_iters.at(0)->get_curr_row(), is_need_fuse))) {
|
||||
STORAGE_LOG(WARN, "failed to preprocess_fuse_row", K(ret));
|
||||
} else if (!is_need_fuse) {
|
||||
} else if (!is_need_fuse && macro_row_iters.at(0)->get_curr_row()->row_flag_.is_delete()) {
|
||||
result_row_.row_flag_.reset();
|
||||
result_row_.row_flag_ = macro_row_iters.at(0)->get_curr_row()->row_flag_;
|
||||
for (int64_t i = 1; i < macro_row_iters_cnt; ++i) {
|
||||
result_row_.row_flag_.fuse_flag(macro_row_iters.at(i)->get_curr_row()->row_flag_);
|
||||
}
|
||||
} else {
|
||||
bool final_result = false;
|
||||
for (int64_t i = 0; OB_SUCC(ret) && !final_result && i < macro_row_iters_cnt; ++i) {
|
||||
|
||||
Reference in New Issue
Block a user