add errsim to schedule parallel dump minor sstable, add obtest for bug, dump sstable failed when modify type
This commit is contained in:
parent
5a35ec6391
commit
43280b8d81
@ -466,6 +466,7 @@ GLOBAL_ERRSIM_POINT_DEF(761, EN_FAST_RECLAIM_THREAD, "used to speed up reclaimin
|
||||
GLOBAL_ERRSIM_POINT_DEF(800, EN_END_PARTICIPANT, "");
|
||||
|
||||
// compaction 801 - 899
|
||||
GLOBAL_ERRSIM_POINT_DEF(801, EN_FORCE_PARALLEL_MINI_MERGE, "used to force set parallel degree for mini merge");
|
||||
|
||||
// compaction 801 - 899
|
||||
//LS Migration Related 900 - 1000
|
||||
|
@ -431,9 +431,9 @@ ObLLVMDIHelper::ObDIBasicTypeAttr ObLLVMDIHelper::basic_type_[common::ObMaxType]
|
||||
{"tinyint unsigned", 8, 8, llvm::dwarf::DW_ATE_unsigned},
|
||||
{"smallint unsigned", 16, 16, llvm::dwarf::DW_ATE_unsigned},
|
||||
{"mediumint unsigned", 32, 32, llvm::dwarf::DW_ATE_unsigned},
|
||||
{"int unsigned", 32, 32, llvm::dwarf::DW_ATE_unsigned},
|
||||
{"bigint unsigned", 64, 64, llvm::dwarf::DW_ATE_unsigned},
|
||||
{"float", 32, 32, llvm::dwarf::DW_ATE_float},
|
||||
{"int unsigned", 32, 32, llvm::dwarf::DW_ATE_unsigned},
|
||||
{"bigint unsigned", 64, 64, llvm::dwarf::DW_ATE_unsigned},
|
||||
{"float", 32, 32, llvm::dwarf::DW_ATE_float},
|
||||
{"double", 64, 64, llvm::dwarf::DW_ATE_float},
|
||||
{"float unsigned", 32, 32, llvm::dwarf::DW_ATE_float},
|
||||
{"double unsigned", 64, 64, llvm::dwarf::DW_ATE_float},
|
||||
|
@ -260,6 +260,22 @@ int ObParallelMergeCtx::init_parallel_major_merge(compaction::ObBasicTabletMerge
|
||||
return ret;
|
||||
}
|
||||
|
||||
#ifdef ERRSIM
|
||||
void errsim_set_prallel_cnt(const int64_t parallel_merge_cnt, int64_t &concurrent_cnt)
|
||||
{
|
||||
/* alter system set_tp tp_no = 801, error_code = 3, frequency = 1;
|
||||
* error_code = 3, then the parallel degree of mini merge will be 3
|
||||
*/
|
||||
int ret = OB_SUCCESS;
|
||||
ret = OB_E(EventTable::EN_FORCE_PARALLEL_MINI_MERGE) ret;
|
||||
if (OB_FAIL(ret)) {
|
||||
concurrent_cnt = MIN(-ret, parallel_merge_cnt);
|
||||
ret = OB_SUCCESS;
|
||||
STORAGE_LOG(INFO, "ERRSIM EN_FORCE_PARALLEL_MINI_MERGE, force set parallel degree for mini merge", K(concurrent_cnt));
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
int ObParallelMergeCtx::init_parallel_mini_merge(compaction::ObBasicTabletMergeCtx &merge_ctx)
|
||||
{
|
||||
int ret = OB_SUCCESS;
|
||||
@ -284,6 +300,13 @@ int ObParallelMergeCtx::init_parallel_mini_merge(compaction::ObBasicTabletMergeC
|
||||
(total_bytes + ObCompactionEstimator::MINI_PARALLEL_BASE_MEM - 1) / ObCompactionEstimator::MINI_PARALLEL_BASE_MEM,
|
||||
concurrent_cnt_);
|
||||
|
||||
#ifdef ERRSIM
|
||||
if (concurrent_cnt_ <= 1) {
|
||||
(void )errsim_set_prallel_cnt(PARALLEL_MERGE_TARGET_TASK_CNT, concurrent_cnt_);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
ObArray<ObStoreRange> store_ranges;
|
||||
store_ranges.set_attr(lib::ObMemAttr(MTL_ID(), "TmpMiniRanges", ObCtxIds::MERGE_NORMAL_CTX_ID));
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user