Use ObTMArray to fix memory bloat problem caused by ObArrayImpl<oceanbase::sql::ObPxPartChMapItem>

This commit is contained in:
obdev
2023-08-09 06:42:38 +00:00
committed by ob-robot
parent 029ed46d44
commit 621c5a7784
2 changed files with 10 additions and 5 deletions

View File

@ -210,6 +210,11 @@ typedef common::ObArray<ObPxPartChMapItem,
false, /*auto free*/
common::ObArrayDefaultCallBack<ObPxPartChMapItem>,
common::DefaultItemEncode<ObPxPartChMapItem> > ObPxPartChMapArray;
typedef sql::ObTMArray<ObPxPartChMapItem,
common::ModulePageAllocator,
false, /*auto free*/
common::ObArrayDefaultCallBack<ObPxPartChMapItem>,
common::DefaultItemEncode<ObPxPartChMapItem> > ObPxPartChMapTMArray;
typedef common::hash::ObHashMap<int64_t, int64_t, common::hash::NoPthreadDefendMode> ObPxPartChMap;
@ -217,7 +222,7 @@ struct ObPxPartChInfo
{
ObPxPartChInfo() : part_ch_array_() {}
~ObPxPartChInfo() = default;
ObPxPartChMapArray part_ch_array_;
ObPxPartChMapTMArray part_ch_array_;
};
class ObPxReceiveDataChannelMsg