From 3c140af6c756b30b325ce3c6ed080e8898e2b7ec Mon Sep 17 00:00:00 2001
From: Fabio Pistolesi <fabio.pistolesi@forgerock.com>
Date: Wed, 24 Feb 2016 13:52:15 +0000
Subject: [PATCH] OPENDJ-2190 Replicas cannot always keep up with sustained high write throughput
---
opendj-server-legacy/src/main/java/org/opends/server/replication/plugin/MultimasterReplication.java | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/replication/plugin/MultimasterReplication.java b/opendj-server-legacy/src/main/java/org/opends/server/replication/plugin/MultimasterReplication.java
index 8527c20..1d87753 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/replication/plugin/MultimasterReplication.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/replication/plugin/MultimasterReplication.java
@@ -22,7 +22,7 @@
*
*
* Copyright 2006-2010 Sun Microsystems, Inc.
- * Portions Copyright 2011-2016 ForgeRock AS
+ * Portions Copyright 2011-2016 ForgeRock AS.
*/
package org.opends.server.replication.plugin;
@@ -41,6 +41,7 @@
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.LinkedBlockingQueue;
import java.util.concurrent.atomic.AtomicReference;
+import java.util.concurrent.locks.ReentrantLock;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.i18n.slf4j.LocalizedLogger;
@@ -316,9 +317,10 @@
{
replayThreads.clear();
+ ReentrantLock switchQueueLock = new ReentrantLock();
for (int i = 0; i < replayThreadNumber; i++)
{
- ReplayThread replayThread = new ReplayThread(updateToReplayQueue);
+ ReplayThread replayThread = new ReplayThread(updateToReplayQueue, switchQueueLock);
replayThread.start();
replayThreads.add(replayThread);
}
--
Gitblit v1.10.0