mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

pgamba
02.09.2007 d1465691c70a578c22f2d0d5e0efc812bcdfc4e8
Fix 2520 - Notice : Directory server has disconnected  - Make the heartbeat monitor to fail after 2 consecutive period with no heartbeat detected
1 files modified
14 ■■■■■ changed files
opends/src/server/org/opends/server/replication/plugin/HeartbeatMonitor.java 14 ●●●●● patch | view | raw | blame | history
opends/src/server/org/opends/server/replication/plugin/HeartbeatMonitor.java
@@ -101,6 +101,7 @@
  @Override
  public void run()
  {
    boolean gotOneFailure = false;
    if (debugEnabled())
    {
      TRACER.debugInfo("Heartbeat monitor is starting, expected interval is " +
@@ -113,13 +114,24 @@
      {
        long now = System.currentTimeMillis();
        long lastReceiveTime = session.getLastReceiveTime();
        if (now > lastReceiveTime + 2 * heartbeatInterval)
        if (now > lastReceiveTime + heartbeatInterval)
        {
          if (gotOneFailure == true)
        {
          // Heartbeat is well overdue so the server is assumed to be dead.
          logError(NOTE_HEARTBEAT_FAILURE.get(currentThread().getName()));
          session.close();
          }
          else
          {
            gotOneFailure = true;
          }
          break;
        }
        else
        {
          gotOneFailure = false;
        }
        try
        {
          Thread.sleep(heartbeatInterval);