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

matthew_swift
18.17.2010 6146178edc4d16fa95205c12c40da35ff2414870
Fix bug which can cause replicas to diverge under heavy stress
1 files modified
15 ■■■■■ changed files
opendj-sdk/opends/src/server/org/opends/server/replication/service/ReplicationBroker.java 15 ●●●●● patch | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/replication/service/ReplicationBroker.java
@@ -2466,11 +2466,16 @@
        }
        if ((!credit) && (currentWindowSemaphore.availablePermits() == 0))
        {
          // the window is still closed.
          // Send a WindowProbeMsg message to wakeup the receiver in case the
          // window update message was lost somehow...
          // then loop to check again if connection was closed.
          session.publish(new WindowProbeMsg());
          synchronized (connectPhaseLock)
          {
            // the window is still closed.
            // Send a WindowProbeMsg message to wakeup the receiver in case the
            // window update message was lost somehow...
            // then loop to check again if connection was closed.
            if (session != null) {
              session.publish(new WindowProbeMsg());
            }
          }
        }
      } catch (IOException e)
      {