diff --git a/src/storage/compaction/ob_tablet_merge_ctx.cpp b/src/storage/compaction/ob_tablet_merge_ctx.cpp index 94f852816b..2d81b4fc26 100644 --- a/src/storage/compaction/ob_tablet_merge_ctx.cpp +++ b/src/storage/compaction/ob_tablet_merge_ctx.cpp @@ -44,7 +44,7 @@ ObTabletMergeInfo::ObTabletMergeInfo() bloom_filter_block_ctx_(nullptr), bloomfilter_block_id_(), sstable_merge_info_(), - allocator_("MergeContext", OB_MALLOC_MIDDLE_BLOCK_SIZE), + allocator_("MergeContext", OB_MALLOC_MIDDLE_BLOCK_SIZE, MTL_ID()), index_builder_(nullptr) { } diff --git a/src/storage/compaction/ob_tablet_merge_task.cpp b/src/storage/compaction/ob_tablet_merge_task.cpp index 9dac92cc88..cdf550f29d 100644 --- a/src/storage/compaction/ob_tablet_merge_task.cpp +++ b/src/storage/compaction/ob_tablet_merge_task.cpp @@ -190,7 +190,7 @@ ObBasicTabletMergeDag::ObBasicTabletMergeDag( compat_mode_(lib::Worker::CompatMode::INVALID), ctx_(nullptr), param_(), - allocator_("MergeDag") + allocator_("MergeDag", OB_MALLOC_NORMAL_BLOCK_SIZE, MTL_ID()) { } @@ -1308,7 +1308,7 @@ int ObTabletMergeFinishTask::try_schedule_compaction_after_mini( ObTabletMergeTask::ObTabletMergeTask() : ObITask(ObITask::TASK_TYPE_MACROMERGE), - allocator_(), + allocator_("MergeTask", OB_MALLOC_NORMAL_BLOCK_SIZE, MTL_ID()), idx_(0), ctx_(nullptr), merger_(nullptr), diff --git a/src/storage/high_availability/ob_storage_ha_tablet_builder.cpp b/src/storage/high_availability/ob_storage_ha_tablet_builder.cpp index cfc897dabc..0ad93fbfb7 100644 --- a/src/storage/high_availability/ob_storage_ha_tablet_builder.cpp +++ b/src/storage/high_availability/ob_storage_ha_tablet_builder.cpp @@ -842,7 +842,7 @@ int ObStorageHATabletsBuilder::hold_local_reuse_sstable_( } else if (OB_FAIL(hold_local_complete_tablet_sstable_(tablet, tables_handle))) { LOG_WARN("failed to hold local complete tablet sstable", K(ret), KP(tablet)); } else { - if (!storage_schema.is_valid() + if (!storage_schema.is_inited() || storage_schema.get_schema_version() < tablet->get_storage_schema().get_schema_version()) { storage_schema.reset(); if (OB_FAIL(storage_schema.init(allocator, tablet->get_storage_schema()))) { diff --git a/src/storage/ob_storage_schema.h b/src/storage/ob_storage_schema.h index 4aa7d7a609..7e7413e73e 100644 --- a/src/storage/ob_storage_schema.h +++ b/src/storage/ob_storage_schema.h @@ -98,7 +98,7 @@ class ObStorageSchema : public share::schema::ObMergeSchema, public memtable::Ob public: ObStorageSchema(); virtual ~ObStorageSchema(); - + bool is_inited() const { return is_inited_; } int init( common::ObIAllocator &allocator, const share::schema::ObTableSchema &input_schema,