remove memstore limit for inner table
This commit is contained in:
parent
d113832231
commit
d3d110b766
@ -93,7 +93,9 @@ void* ObGMemstoreAllocator::alloc(AllocHandle& handle, int64_t size)
|
||||
hlist_.set_active(handle);
|
||||
}
|
||||
}
|
||||
if (OB_FAIL(ObTenantManager::get_instance().check_tenant_out_of_memstore_limit(tenant_id, is_out_of_mem))) {
|
||||
if (handle.mt_.is_inner_table()) {
|
||||
// inner table memory not limited by memstore
|
||||
} else if (OB_FAIL(ObTenantManager::get_instance().check_tenant_out_of_memstore_limit(tenant_id, is_out_of_mem))) {
|
||||
COMMON_LOG(ERROR, "fail to check tenant out of mem limit", K(ret), K(tenant_id));
|
||||
is_out_of_mem = true;
|
||||
} else if (is_out_of_mem && REACH_TIME_INTERVAL(1 * 1000 * 1000)) {
|
||||
|
@ -2634,7 +2634,7 @@ int ObMemtable::check_standby_cluster_schema_condition_(
|
||||
// user tables of normal tenants(not sys tenant) need to be checked by schema version of
|
||||
// itself;
|
||||
// sys tables of normal tenants(not sys tenant) need to be checked by schema version of sys tenent;
|
||||
uint64_t referred_tenant_id = is_inner_table(table_id) ? OB_SYS_TENANT_ID : tenant_id;
|
||||
uint64_t referred_tenant_id = common::is_inner_table(table_id) ? OB_SYS_TENANT_ID : tenant_id;
|
||||
int64_t tenant_schema_version = 0;
|
||||
if (OB_FAIL(GSCHEMASERVICE.get_tenant_refreshed_schema_version(referred_tenant_id, tenant_schema_version))) {
|
||||
TRANS_LOG(WARN,
|
||||
|
@ -256,6 +256,7 @@ class ObMemtable : public ObIMemtable {
|
||||
virtual int get_frozen_schema_version(int64_t& schema_version) const override;
|
||||
virtual bool is_frozen_memtable() const override;
|
||||
virtual bool is_active_memtable() const override;
|
||||
virtual bool is_inner_table() const { return common::is_inner_table(key_.table_id_); }
|
||||
int set_snapshot_version(const int64_t snapshot_version);
|
||||
int set_base_version(const int64_t base_version);
|
||||
int set_start_log_ts(const int64_t start_ts);
|
||||
|
Loading…
x
Reference in New Issue
Block a user