private void handleRollingUpgradeStatus(HeartbeatResponse resp) throws IOException { RollingUpgradeStatus rollingUpgradeStatus = resp.getRollingUpdateStatus(); if (rollingUpgradeStatus != null && rollingUpgradeStatus.getBlockPoolId().compareTo(bpos.getBlockPoolId()) != 0) { // Can this ever occur? LOG.error("Invalid BlockPoolId " + rollingUpgradeStatus.getBlockPoolId() + " in HeartbeatResponse. Expected " + bpos.getBlockPoolId()); } else { bpos.signalRollingUpgrade(rollingUpgradeStatus); } }
/** * Signal the current rolling upgrade status as indicated by the NN. * @param rollingUpgradeStatus rolling upgrade status */ void signalRollingUpgrade(RollingUpgradeStatus rollingUpgradeStatus) throws IOException { if (rollingUpgradeStatus == null) { return; } String bpid = getBlockPoolId(); if (!rollingUpgradeStatus.isFinalized()) { dn.getFSDataset().enableTrash(bpid); dn.getFSDataset().setRollingUpgradeMarker(bpid); } else { dn.getFSDataset().clearTrash(bpid); dn.getFSDataset().clearRollingUpgradeMarker(bpid); } }
@Override public boolean equals(Object obj) { if (obj == this) { return true; } else if (obj == null || !(obj instanceof RollingUpgradeInfo)) { return false; } final RollingUpgradeInfo that = (RollingUpgradeInfo)obj; return super.equals(that) && this.startTime == that.startTime && this.finalizeTime == that.finalizeTime; }
public static RollingUpgradeStatusProto convertRollingUpgradeStatus( RollingUpgradeStatus status) { return RollingUpgradeStatusProto.newBuilder() .setBlockPoolId(status.getBlockPoolId()) .setFinalized(status.isFinalized()) .build(); }
@Override public int hashCode() { //only use lower 32 bits return super.hashCode() ^ (int)startTime ^ (int)finalizeTime; }
@Override public String toString() { return super.toString() + "\n Start Time: " + (startTime == 0 ? "<NOT STARTED>" : timestamp2String(startTime)) + "\n Finalize Time: " + (finalizeTime == 0 ? "<NOT FINALIZED>" : timestamp2String(finalizeTime)); }
public static RollingUpgradeStatus convert(RollingUpgradeStatusProto proto) { return new RollingUpgradeStatus(proto.getBlockPoolId(), proto.getFinalized()); }
public static RollingUpgradeStatusProto convertRollingUpgradeStatus( RollingUpgradeStatus status) { return RollingUpgradeStatusProto.newBuilder() .setBlockPoolId(status.getBlockPoolId()) .setFinalized(status.isFinalized()) .build(); }
@Override public int hashCode() { //only use lower 32 bits return super.hashCode() ^ (int)startTime ^ (int)finalizeTime; }
@Override public String toString() { return super.toString() + "\n Start Time: " + (startTime == 0? "<NOT STARTED>": timestamp2String(startTime)) + "\n Finalize Time: " + (finalizeTime == 0? "<NOT FINALIZED>": timestamp2String(finalizeTime)); }
public static RollingUpgradeStatus convert(RollingUpgradeStatusProto proto) { return new RollingUpgradeStatus(proto.getBlockPoolId(), proto.getFinalized()); }
public static RollingUpgradeStatusProto convertRollingUpgradeStatus( RollingUpgradeStatus status) { return RollingUpgradeStatusProto.newBuilder() .setBlockPoolId(status.getBlockPoolId()) .setFinalized(status.isFinalized()) .build(); }
@Override public boolean equals(Object obj) { if (obj == this) { return true; } else if (obj == null || !(obj instanceof RollingUpgradeStatus)) { return false; } final RollingUpgradeStatus that = (RollingUpgradeStatus) obj; return this.blockPoolId.equals(that.blockPoolId) && this.isFinalized() == that.isFinalized(); }
private void handleRollingUpgradeStatus(HeartbeatResponse resp) throws IOException { RollingUpgradeStatus rollingUpgradeStatus = resp.getRollingUpdateStatus(); if (rollingUpgradeStatus != null && rollingUpgradeStatus.getBlockPoolId().compareTo(bpos.getBlockPoolId()) != 0) { // Can this ever occur? LOG.error("Invalid BlockPoolId " + rollingUpgradeStatus.getBlockPoolId() + " in HeartbeatResponse. Expected " + bpos.getBlockPoolId()); } else { bpos.signalRollingUpgrade(rollingUpgradeStatus); } }
@Override public boolean equals(Object obj) { if (obj == this) { return true; } else if (obj == null || !(obj instanceof RollingUpgradeInfo)) { return false; } final RollingUpgradeInfo that = (RollingUpgradeInfo)obj; return super.equals(that) && this.startTime == that.startTime && this.finalizeTime == that.finalizeTime; }
@Override public int hashCode() { //only use lower 32 bits return super.hashCode() ^ (int)startTime ^ (int)finalizeTime; }
@Override public String toString() { return super.toString() + "\n Start Time: " + (startTime == 0? "<NOT STARTED>": timestamp2String(startTime)) + "\n Finalize Time: " + (finalizeTime == 0? "<NOT FINALIZED>": timestamp2String(finalizeTime)); }
public static RollingUpgradeStatus convert(RollingUpgradeStatusProto proto) { return new RollingUpgradeStatus(proto.getBlockPoolId(), proto.getFinalized()); }
@Override public boolean equals(Object obj) { if (obj == this) { return true; } else if (obj == null || !(obj instanceof RollingUpgradeStatus)) { return false; } final RollingUpgradeStatus that = (RollingUpgradeStatus) obj; return this.blockPoolId.equals(that.blockPoolId) && this.isFinalized() == that.isFinalized(); }
private void handleRollingUpgradeStatus(HeartbeatResponse resp) throws IOException { RollingUpgradeStatus rollingUpgradeStatus = resp.getRollingUpdateStatus(); if (rollingUpgradeStatus != null && rollingUpgradeStatus.getBlockPoolId().compareTo(bpos.getBlockPoolId()) != 0) { // Can this ever occur? LOG.error("Invalid BlockPoolId " + rollingUpgradeStatus.getBlockPoolId() + " in HeartbeatResponse. Expected " + bpos.getBlockPoolId()); } else { bpos.signalRollingUpgrade(rollingUpgradeStatus); } }