@Override
  protected LockState acquireLock(final MasterProcedureEnv env) {
    boolean ret = lock.acquireLock(env);
    locked.set(ret);
    if (ret) {
      if (LOG.isDebugEnabled()) {
        LOG.debug("LOCKED " + toString());
      }
      lastHeartBeat.set(EnvironmentEdgeManager.currentTime());
      return LockState.LOCK_ACQUIRED;
    }
    LOG.warn("Failed acquire LOCK " + toString() + "; YIELDING");
    return LockState.LOCK_EVENT_WAIT;
  }
Re run the procedure after every timeout to write new WAL entries so we don't hold back old
WALs.
@return false, so procedure framework doesn't mark this procedure as failure.
hbase-server/src/main/java/org/apache/hadoop/hbase/master/locking/LockProcedure.java