Java 类org.apache.hadoop.hbase.master.balancer.BaseLoadBalancer.Cluster.MoveRegionAction 实例源码

项目:ditb    文件:StochasticLoadBalancer.java   
protected Cluster.Action getAction (int fromServer, int fromRegion,
    int toServer, int toRegion) {
  if (fromServer < 0 || toServer < 0) {
    return Cluster.NullAction;
  }
  if (fromRegion > 0 && toRegion > 0) {
    return new Cluster.SwapRegionsAction(fromServer, fromRegion,
      toServer, toRegion);
  } else if (fromRegion > 0) {
    return new Cluster.MoveRegionAction(fromRegion, fromServer, toServer);
  } else if (toRegion > 0) {
    return new Cluster.MoveRegionAction(toRegion, toServer, fromServer);
  } else {
    return Cluster.NullAction;
  }
}
项目:ditb    文件:StochasticLoadBalancer.java   
/** Called once per cluster Action to give the cost function
 * an opportunity to update it's state. postAction() is always
 * called at least once before cost() is called with the cluster
 * that this action is performed on. */
void postAction(Action action) {
  switch (action.type) {
  case NULL: break;
  case ASSIGN_REGION:
    AssignRegionAction ar = (AssignRegionAction) action;
    regionMoved(ar.region, -1, ar.server);
    break;
  case MOVE_REGION:
    MoveRegionAction mra = (MoveRegionAction) action;
    regionMoved(mra.region, mra.fromServer, mra.toServer);
    break;
  case SWAP_REGIONS:
    SwapRegionsAction a = (SwapRegionsAction) action;
    regionMoved(a.fromRegion, a.fromServer, a.toServer);
    regionMoved(a.toRegion, a.toServer, a.fromServer);
    break;
  default:
    throw new RuntimeException("Uknown action:" + action.type);
  }
}
项目:pbase    文件:StochasticLoadBalancer.java   
protected Cluster.Action getAction (int fromServer, int fromRegion,
    int toServer, int toRegion) {
  if (fromServer < 0 || toServer < 0) {
    return Cluster.NullAction;
  }
  if (fromRegion > 0 && toRegion > 0) {
    return new Cluster.SwapRegionsAction(fromServer, fromRegion,
      toServer, toRegion);
  } else if (fromRegion > 0) {
    return new Cluster.MoveRegionAction(fromRegion, fromServer, toServer);
  } else if (toRegion > 0) {
    return new Cluster.MoveRegionAction(toRegion, toServer, fromServer);
  } else {
    return Cluster.NullAction;
  }
}
项目:pbase    文件:StochasticLoadBalancer.java   
/** Called once per cluster Action to give the cost function
 * an opportunity to update it's state. postAction() is always
 * called at least once before cost() is called with the cluster
 * that this action is performed on. */
void postAction(Action action) {
  switch (action.type) {
  case NULL: break;
  case ASSIGN_REGION:
    AssignRegionAction ar = (AssignRegionAction) action;
    regionMoved(ar.region, -1, ar.server);
    break;
  case MOVE_REGION:
    MoveRegionAction mra = (MoveRegionAction) action;
    regionMoved(mra.region, mra.fromServer, mra.toServer);
    break;
  case SWAP_REGIONS:
    SwapRegionsAction a = (SwapRegionsAction) action;
    regionMoved(a.fromRegion, a.fromServer, a.toServer);
    regionMoved(a.toRegion, a.toServer, a.fromServer);
    break;
  default:
    throw new RuntimeException("Uknown action:" + action.type);
  }
}
项目:hbase    文件:StochasticLoadBalancer.java   
protected Cluster.Action getAction(int fromServer, int fromRegion,
    int toServer, int toRegion) {
  if (fromServer < 0 || toServer < 0) {
    return Cluster.NullAction;
  }
  if (fromRegion > 0 && toRegion > 0) {
    return new Cluster.SwapRegionsAction(fromServer, fromRegion,
      toServer, toRegion);
  } else if (fromRegion > 0) {
    return new Cluster.MoveRegionAction(fromRegion, fromServer, toServer);
  } else if (toRegion > 0) {
    return new Cluster.MoveRegionAction(toRegion, toServer, fromServer);
  } else {
    return Cluster.NullAction;
  }
}
项目:hbase    文件:StochasticLoadBalancer.java   
/** Called once per cluster Action to give the cost function
 * an opportunity to update it's state. postAction() is always
 * called at least once before cost() is called with the cluster
 * that this action is performed on. */
void postAction(Action action) {
  switch (action.type) {
  case NULL: break;
  case ASSIGN_REGION:
    AssignRegionAction ar = (AssignRegionAction) action;
    regionMoved(ar.region, -1, ar.server);
    break;
  case MOVE_REGION:
    MoveRegionAction mra = (MoveRegionAction) action;
    regionMoved(mra.region, mra.fromServer, mra.toServer);
    break;
  case SWAP_REGIONS:
    SwapRegionsAction a = (SwapRegionsAction) action;
    regionMoved(a.fromRegion, a.fromServer, a.toServer);
    regionMoved(a.toRegion, a.toServer, a.fromServer);
    break;
  default:
    throw new RuntimeException("Uknown action:" + action.type);
  }
}