Replace memtable pointer with ObTableHandleV2 and use LSHandle in ObMemtable

This commit is contained in:
obdev
2022-12-30 06:38:13 +00:00
committed by ob-robot
parent d1453a1695
commit 976cfca700
15 changed files with 182 additions and 91 deletions

View File

@ -30,6 +30,7 @@
#include "storage/memtable/mvcc/ob_mvcc_row.h"
#include "share/scn.h"
#include "storage/ls/ob_ls.h"
#include "storage/tx_storage/ob_ls_map.h"
namespace oceanbase
{
@ -121,8 +122,10 @@ public:
table_key.scn_range_.end_scn_ = share::SCN::max_scn();
int64_t schema_version = 1;
uint32_t freeze_clock = 0;
ObLSHandle ls_handle;
ls_handle.set_ls(ls_map_, ls_, ObLSGetMod::DATA_MEMTABLE_MOD);
return mt_table.init(table_key, nullptr, &freezer_, &memtable_mgr_, schema_version, freeze_clock);
return mt_table.init(table_key, ls_handle, &freezer_, &memtable_mgr_, schema_version, freeze_clock);
}
int mock_col_desc()
{
@ -190,6 +193,7 @@ public:
ObTableReadInfo read_info_;
ObArenaAllocator allocator_;
MemtableIDMap ctx_map_;
ObLSMap ls_map_;
};
class RunCtxGuard