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 |       // sync wash | ||||||
|       if (OB_SUCC(ret) && size_washed < size_need_washed) { |       if (OB_SUCC(ret) && size_washed < size_need_washed) { | ||||||
|         ret = OB_CACHE_FREE_BLOCK_NOT_ENOUGH; |         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)); |         COMMON_LOG(INFO, "can not find enough memory block to wash", K(ret), K(size_washed), K(size_need_washed)); | ||||||
|       } |       } | ||||||
|       if (OB_FAIL(ret)) { |       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)); |     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))) { |   } 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)); |     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 { |   } else { | ||||||
|     bool final_result = false; |     bool final_result = false; | ||||||
|     for (int64_t i = 0; OB_SUCC(ret) && !final_result && i < macro_row_iters_cnt; ++i) { |     for (int64_t i = 0; OB_SUCC(ret) && !final_result && i < macro_row_iters_cnt; ++i) { | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user
	 z404289981
					z404289981