Skip to content

Commit 84a8d1f

Browse files
author
ukumawat
committed
HBASE-28690 added getMasterActiveTime in MasterServices for UT's
1 parent 320e662 commit 84a8d1f

4 files changed

Lines changed: 15 additions & 6 deletions

File tree

hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3097,6 +3097,7 @@ public long getMasterStartTime() {
30973097
}
30983098

30993099
/** Returns timestamp in millis when HMaster became the active master. */
3100+
@Override
31003101
public long getMasterActiveTime() {
31013102
return masterActiveTime;
31023103
}

hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterServices.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -261,6 +261,9 @@ long splitRegion(final RegionInfo regionInfo, final byte[] splitRow, final long
261261
/** Returns true if master is the active one */
262262
boolean isActiveMaster();
263263

264+
/** Returns timestamp in millis when this master became the active one. */
265+
long getMasterActiveTime();
266+
264267
/** Returns true if master is initialized */
265268
boolean isInitialized();
266269

hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/RSProcedureDispatcher.java

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@
2929
import org.apache.hadoop.hbase.client.RegionInfo;
3030
import org.apache.hadoop.hbase.ipc.RpcConnectionConstants;
3131
import org.apache.hadoop.hbase.ipc.ServerNotRunningYetException;
32-
import org.apache.hadoop.hbase.master.HMaster;
3332
import org.apache.hadoop.hbase.master.MasterServices;
3433
import org.apache.hadoop.hbase.master.ServerListener;
3534
import org.apache.hadoop.hbase.master.ServerManager;
@@ -423,14 +422,13 @@ public void dispatchCloseRequests(final MasterProcedureEnv env,
423422
final List<RegionCloseOperation> operations) {
424423
for (RegionCloseOperation op : operations) {
425424
request.addCloseRegion(op.buildCloseRegionRequest(getServerName(),
426-
((HMaster) env.getMasterServices()).getMasterActiveTime()));
425+
env.getMasterServices().getMasterActiveTime()));
427426
}
428427
}
429428

430429
@Override
431430
public void dispatchServerOperations(MasterProcedureEnv env, List<ServerOperation> operations) {
432-
operations.stream()
433-
.map(o -> o.buildRequest(((HMaster) env.getMasterServices()).getMasterActiveTime()))
431+
operations.stream().map(o -> o.buildRequest(env.getMasterServices().getMasterActiveTime()))
434432
.forEachOrdered(request::addProc);
435433
}
436434

@@ -455,8 +453,7 @@ private static OpenRegionRequest buildOpenRegionRequest(final MasterProcedureEnv
455453
final ServerName serverName, final List<RegionOpenOperation> operations) {
456454
final OpenRegionRequest.Builder builder = OpenRegionRequest.newBuilder();
457455
builder.setServerStartCode(serverName.getStartCode());
458-
builder
459-
.setInitiatingMasterActiveTime(((HMaster) env.getMasterServices()).getMasterActiveTime());
456+
builder.setInitiatingMasterActiveTime(env.getMasterServices().getMasterActiveTime());
460457
builder.setMasterSystemTime(EnvironmentEdgeManager.currentTime());
461458
for (RegionOpenOperation op : operations) {
462459
builder.addOpenInfo(op.buildRegionOpenInfoRequest(env));

hbase-server/src/test/java/org/apache/hadoop/hbase/master/MockNoopMasterServices.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,16 +58,19 @@
5858
import org.apache.hadoop.hbase.replication.ReplicationPeerDescription;
5959
import org.apache.hadoop.hbase.security.access.AccessChecker;
6060
import org.apache.hadoop.hbase.security.access.ZKPermissionWatcher;
61+
import org.apache.hadoop.hbase.util.EnvironmentEdgeManager;
6162
import org.apache.hadoop.hbase.zookeeper.ZKWatcher;
6263

6364
public class MockNoopMasterServices implements MasterServices {
6465

6566
private final Configuration conf;
6667
private final MetricsMaster metricsMaster;
68+
private final long masterActiveTime;
6769

6870
public MockNoopMasterServices(final Configuration conf) {
6971
this.conf = conf;
7072
this.metricsMaster = new MetricsMaster(new MetricsMasterWrapperImpl(mock(HMaster.class)));
73+
this.masterActiveTime = EnvironmentEdgeManager.currentTime();
7174
}
7275

7376
@Override
@@ -322,6 +325,11 @@ public boolean isActiveMaster() {
322325
return true;
323326
}
324327

328+
@Override
329+
public long getMasterActiveTime() {
330+
return masterActiveTime;
331+
}
332+
325333
@Override
326334
public boolean isInitialized() {
327335
return false;

0 commit comments

Comments
 (0)