HBASE-25838 Use double instead of Double in StochasticLoadBalancer (#3221)
Signed-off-by: Yulin Niu <niuyulin@apache.org>
This commit is contained in:
parent
a7814bbe57
commit
08507b86a8
|
@ -145,9 +145,9 @@ public class StochasticLoadBalancer extends BaseLoadBalancer {
|
|||
private List<CostFunction> costFunctions; // FindBugs: Wants this protected; IS2_INCONSISTENT_SYNC
|
||||
|
||||
// to save and report costs to JMX
|
||||
private Double curOverallCost = 0d;
|
||||
private Double[] tempFunctionCosts;
|
||||
private Double[] curFunctionCosts;
|
||||
private double curOverallCost = 0d;
|
||||
private double[] tempFunctionCosts;
|
||||
private double[] curFunctionCosts;
|
||||
|
||||
// Keep locality based picker and cost function to alert them
|
||||
// when new services are offered
|
||||
|
@ -222,8 +222,8 @@ public class StochasticLoadBalancer extends BaseLoadBalancer {
|
|||
addCostFunction(regionLoadFunctions[3]);
|
||||
loadCustomCostFunctions(conf);
|
||||
|
||||
curFunctionCosts = new Double[costFunctions.size()];
|
||||
tempFunctionCosts = new Double[costFunctions.size()];
|
||||
curFunctionCosts = new double[costFunctions.size()];
|
||||
tempFunctionCosts = new double[costFunctions.size()];
|
||||
|
||||
boolean isBalancerDecisionRecording = getConf()
|
||||
.getBoolean(BaseLoadBalancer.BALANCER_DECISION_BUFFER_ENABLED,
|
||||
|
@ -523,8 +523,10 @@ public class StochasticLoadBalancer extends BaseLoadBalancer {
|
|||
/**
|
||||
* update costs to JMX
|
||||
*/
|
||||
private void updateStochasticCosts(TableName tableName, Double overall, Double[] subCosts) {
|
||||
if (tableName == null) return;
|
||||
private void updateStochasticCosts(TableName tableName, double overall, double[] subCosts) {
|
||||
if (tableName == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
// check if the metricsBalancer is MetricsStochasticBalancer before casting
|
||||
if (metricsBalancer instanceof MetricsStochasticBalancer) {
|
||||
|
@ -537,7 +539,7 @@ public class StochasticLoadBalancer extends BaseLoadBalancer {
|
|||
for (int i = 0; i < costFunctions.size(); i++) {
|
||||
CostFunction costFunction = costFunctions.get(i);
|
||||
String costFunctionName = costFunction.getClass().getSimpleName();
|
||||
Double costPercent = (overall == 0) ? 0 : (subCosts[i] / overall);
|
||||
double costPercent = (overall == 0) ? 0 : (subCosts[i] / overall);
|
||||
// TODO: cost function may need a specific description
|
||||
balancer.updateStochasticCost(tableName.getNameAsString(), costFunctionName,
|
||||
"The percent of " + costFunctionName, costPercent);
|
||||
|
@ -686,7 +688,7 @@ public class StochasticLoadBalancer extends BaseLoadBalancer {
|
|||
}
|
||||
|
||||
Float multiplier = c.getMultiplier();
|
||||
Double cost = c.cost();
|
||||
double cost = c.cost();
|
||||
|
||||
this.tempFunctionCosts[i] = multiplier*cost;
|
||||
total += this.tempFunctionCosts[i];
|
||||
|
|
Loading…
Reference in New Issue