Description
This has been breaking trunk test runs pretty consistently.
HDFS-4840 introduced some new code to BlockManager that terminates the NN if the ReplicationMonitor thread is interrupted unexpectedly:
if (!namesystem.isRunning()) { LOG.info("Stopping ReplicationMonitor."); if (!(t instanceof InterruptedException)) { LOG.info("ReplicationMonitor received an exception" + " while shutting down.", t); } break; } LOG.fatal("ReplicationMonitor thread received Runtime exception. ", t); terminate(1, t);
Unfortunately, NNThroughputBenchmark interrupts in ReplicationStats#generateInputs:
// stop replication monitor
BlockManagerTestUtil.getReplicationThread(namesystem.getBlockManager())
.interrupt();