fix io_clock calc
This commit is contained in:
		@ -519,7 +519,7 @@ double ObTenantIOClock::get_weight_scale(const int64_t queue_index)
 | 
			
		||||
 | 
			
		||||
int64_t ObTenantIOClock::calc_iops(const int64_t iops, const int64_t percentage)
 | 
			
		||||
{
 | 
			
		||||
  return max(1, static_cast<int64_t>(static_cast<double>(iops) * percentage / 100));
 | 
			
		||||
  return static_cast<double>(iops) / 100 * percentage >= INT64_MAX ? INT64_MAX : static_cast<int64_t>(static_cast<double>(iops) / 100 * percentage);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
int64_t ObTenantIOClock::calc_weight(const int64_t weight, const int64_t percentage)
 | 
			
		||||
@ -533,4 +533,4 @@ void ObTenantIOClock::stop_clock(const uint64_t index)
 | 
			
		||||
  if (index < group_clocks_.count() && index >= 0) {
 | 
			
		||||
    group_clocks_.at(index).stop();
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -883,7 +883,7 @@ int ObTenantIOManager::update_basic_io_config(const ObTenantIOConfig &io_config)
 | 
			
		||||
        if (OB_FAIL(io_clock_->update_io_clocks(io_config_))) {
 | 
			
		||||
          LOG_WARN("refresh io clock failed", K(ret), K(io_config_));
 | 
			
		||||
        } else {
 | 
			
		||||
          LOG_INFO("update basic io config success", K(tenant_id_), K(io_config_), K(io_config));
 | 
			
		||||
          LOG_INFO("update basic io config success", K(tenant_id_), K(io_config_), K(io_config), K(io_clock_));
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user