fix reserve_mem_mode for mini compaction

This commit is contained in:
Fengjingkun
2023-11-29 10:16:08 +00:00
committed by ob-robot
parent 9caad1da27
commit 25c261abdb
2 changed files with 18 additions and 3 deletions

View File

@ -1160,6 +1160,14 @@ int ObTabletMergeTask::process()
return ret; return ret;
} }
ObTxTableMergeDag::~ObTxTableMergeDag()
{
if (param_.is_reserve_mode_) {
MTL(ObTenantCompactionMemPool *)->release_reserve_mem();
FLOG_INFO("TxTable Compaction Leave the Reserve Mode", K(param_));
}
}
ObTabletMiniMergeDag::~ObTabletMiniMergeDag() ObTabletMiniMergeDag::~ObTabletMiniMergeDag()
{ {
if (param_.is_reserve_mode_) { if (param_.is_reserve_mode_) {

View File

@ -331,18 +331,25 @@ static void prepare_allocator(
class DAG_NAME : public ObTabletMergeDag { \ class DAG_NAME : public ObTabletMergeDag { \
public: \ public: \
DAG_NAME() : ObTabletMergeDag(DAG_TYPE) {} \ DAG_NAME() : ObTabletMergeDag(DAG_TYPE) {} \
~DAG_NAME() = default; \ virtual ~DAG_NAME() = default; \
}; };
DEFINE_MERGE_DAG(ObTxTableMergeDag, share::ObDagType::DAG_TYPE_TX_TABLE_MERGE);
DEFINE_MERGE_DAG(ObTabletMajorMergeDag, share::ObDagType::DAG_TYPE_MAJOR_MERGE); DEFINE_MERGE_DAG(ObTabletMajorMergeDag, share::ObDagType::DAG_TYPE_MAJOR_MERGE);
class ObTxTableMergeDag : public ObTabletMergeDag {
public:
ObTxTableMergeDag()
: ObTabletMergeDag(share::ObDagType::DAG_TYPE_TX_TABLE_MERGE)
{}
virtual ~ObTxTableMergeDag();
};
class ObTabletMiniMergeDag : public ObTabletMergeDag { class ObTabletMiniMergeDag : public ObTabletMergeDag {
public: public:
ObTabletMiniMergeDag() ObTabletMiniMergeDag()
: ObTabletMergeDag(share::ObDagType::DAG_TYPE_MINI_MERGE) : ObTabletMergeDag(share::ObDagType::DAG_TYPE_MINI_MERGE)
{} {}
~ObTabletMiniMergeDag(); virtual ~ObTabletMiniMergeDag();
}; };
} // namespace compaction } // namespace compaction