remove memstore limit for inner table
This commit is contained in:
		@ -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);
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user