distinguish mini and complement flush macro block in log

This commit is contained in:
lx0 2021-09-08 11:46:39 +08:00 committed by wangzelin.wzl
parent 19d899e8c3
commit e1677f1d4a
3 changed files with 9 additions and 2 deletions

View File

@ -263,6 +263,7 @@ void ObDataStoreDesc::reset()
need_check_order_ = true;
progressive_merge_round_ = 0;
major_working_cluster_version_ = 0;
iter_complement_ = false;
}
int ObDataStoreDesc::assign(const ObDataStoreDesc& desc)
@ -681,7 +682,9 @@ int ObMacroBlock::flush(
macro_handle.get_macro_id(),
K(*header_),
K(full_meta),
KP(&macro_handle));
KP(&macro_handle),
"iter_to_complement",
spec_->iter_complement_);
}
}
return ret;

View File

@ -73,6 +73,9 @@ struct ObDataStoreDesc {
// major_working_cluster_version_ == 0 means upgrade from old cluster
// which still use freezeinfo without cluster version
int64_t major_working_cluster_version_;
bool iter_complement_;
common::ObArenaAllocator allocator_;
ObDataStoreDesc()
{
reset();
@ -100,7 +103,7 @@ struct ObDataStoreDesc {
K_(store_micro_block_column_checksum), K_(snapshot_version), K_(need_calc_physical_checksum), K_(need_index_tree),
K_(need_prebuild_bloomfilter), K_(bloomfilter_rowkey_prefix), KP_(rowkey_helper), "column_types",
common::ObArrayWrap<common::ObObjMeta>(column_types_, row_column_count_), K_(pg_key), K_(file_handle),
K_(need_check_order), K_(need_index_tree), K_(major_working_cluster_version));
K_(need_check_order), K_(need_index_tree), K_(major_working_cluster_version), K_(iter_complement));
private:
int cal_row_store_type(const share::schema::ObTableSchema& table_schema, const storage::ObMergeType merge_type);

View File

@ -89,6 +89,7 @@ int ObMacroBlockBuilder::open(storage::ObSSTableMergeCtx& ctx, const int64_t idx
ObMacroDataSeq macro_start_seq(0);
task_idx_ = idx;
desc_.merge_info_ = &sstable_merge_info_;
desc_.iter_complement_ = iter_complement;
mark_deletion_maker_ = NULL;
if (desc_.need_prebuild_bloomfilter_) {
ObIPartitionGroup* pg = ctx.pg_guard_.get_partition_group();