You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by bs...@apache.org on 2016/03/25 17:19:21 UTC

incubator-geode git commit: GEODE-1129: DistributionManagerDUnitTest.testAckSevereAlertThreshold is disabled

Repository: incubator-geode
Updated Branches:
  refs/heads/develop d655d27f4 -> bcff8428a


GEODE-1129: DistributionManagerDUnitTest.testAckSevereAlertThreshold is disabled

Reenabling the test and altering the beSick test-hook to no longer disable
accepting of TCP/IP connections but, instead, buffer cache operations in
the membership manager to cause severe-alerts to be issued.


Project: http://git-wip-us.apache.org/repos/asf/incubator-geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-geode/commit/bcff8428
Tree: http://git-wip-us.apache.org/repos/asf/incubator-geode/tree/bcff8428
Diff: http://git-wip-us.apache.org/repos/asf/incubator-geode/diff/bcff8428

Branch: refs/heads/develop
Commit: bcff8428a418d7fec1b3bc0c2a3b712288134901
Parents: d655d27
Author: Bruce Schuchardt <bs...@pivotal.io>
Authored: Fri Mar 25 09:17:47 2016 -0700
Committer: Bruce Schuchardt <bs...@pivotal.io>
Committed: Fri Mar 25 09:18:53 2016 -0700

----------------------------------------------------------------------
 .../membership/gms/mgr/GMSMembershipManager.java     | 15 +++++++++++++--
 .../gemstone/gemfire/internal/tcp/TCPConduit.java    |  6 +++---
 .../internal/DistributionManagerDUnitTest.java       |  4 +---
 3 files changed, 17 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/bcff8428/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/mgr/GMSMembershipManager.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/mgr/GMSMembershipManager.java b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/mgr/GMSMembershipManager.java
index 3d554fa..7ba52cf 100755
--- a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/mgr/GMSMembershipManager.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/mgr/GMSMembershipManager.java
@@ -86,6 +86,7 @@ import com.gemstone.gemfire.internal.Version;
 import com.gemstone.gemfire.internal.admin.remote.RemoteTransportConfig;
 import com.gemstone.gemfire.internal.cache.CacheServerImpl;
 import com.gemstone.gemfire.internal.cache.GemFireCacheImpl;
+import com.gemstone.gemfire.internal.cache.partitioned.PartitionMessageWithDirectReply;
 import com.gemstone.gemfire.internal.cache.xmlcache.CacheServerCreation;
 import com.gemstone.gemfire.internal.cache.xmlcache.CacheXmlGenerator;
 import com.gemstone.gemfire.internal.i18n.LocalizedStrings;
@@ -1048,6 +1049,13 @@ public class GMSMembershipManager implements MembershipManager, Manager
    */
   protected void handleOrDeferMessage(DistributionMessage msg) {
     synchronized(startupLock) {
+      if (beingSick || playingDead) {
+        // cache operations are blocked in a "sick" member
+        if (msg.containsRegionContentChange() || msg instanceof PartitionMessageWithDirectReply) {
+          startupMessages.add(new StartupEvent(msg));
+          return;
+        }
+      }
       if (!processingEvents) {
         startupMessages.add(new StartupEvent(msg));
         return;
@@ -2477,8 +2485,11 @@ public class GMSMembershipManager implements MembershipManager, Manager
    */
   public synchronized void beHealthy() {
     if (beingSick || playingDead) {
-      beingSick = false;
-      playingDead = false;
+      synchronized(startupMutex) {
+        beingSick = false;
+        playingDead = false;
+        startEventProcessing();
+      }
       logger.info("GroupMembershipService.beHealthy invoked for {} - recovering health now", this.address);
       if (directChannel != null) {
         directChannel.beHealthy();

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/bcff8428/geode-core/src/main/java/com/gemstone/gemfire/internal/tcp/TCPConduit.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/tcp/TCPConduit.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/tcp/TCPConduit.java
index 41e5837..9cb1400 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/tcp/TCPConduit.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/tcp/TCPConduit.java
@@ -1192,15 +1192,15 @@ public class TCPConduit implements Runnable {
    * simulate being sick
    */
   public void beSick() {
-    this.inhibitNewConnections = true;
-    this.conTable.closeReceivers(true);
+//    this.inhibitNewConnections = true;
+//    this.conTable.closeReceivers(true);
   }
   
   /**
    * simulate being healthy
    */
   public void beHealthy() {
-    this.inhibitNewConnections = false;
+//    this.inhibitNewConnections = false;
   }
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/bcff8428/geode-core/src/test/java/com/gemstone/gemfire/distributed/internal/DistributionManagerDUnitTest.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/com/gemstone/gemfire/distributed/internal/DistributionManagerDUnitTest.java b/geode-core/src/test/java/com/gemstone/gemfire/distributed/internal/DistributionManagerDUnitTest.java
index 81d35d4..d1487ee 100644
--- a/geode-core/src/test/java/com/gemstone/gemfire/distributed/internal/DistributionManagerDUnitTest.java
+++ b/geode-core/src/test/java/com/gemstone/gemfire/distributed/internal/DistributionManagerDUnitTest.java
@@ -256,9 +256,7 @@ public class DistributionManagerDUnitTest extends DistributedTestCase {
    * region that sleeps when notified, forcing the operation to take longer
    * than ack-wait-threshold + ack-severe-alert-threshold
    */
-  // DISABLED due to a high rate of failure in CI test runs.  See internal
-  // ticket #52319
-  public void disabledtestAckSevereAlertThreshold() throws Exception {
+  public void testAckSevereAlertThreshold() throws Exception {
     disconnectAllFromDS();
     Host host = Host.getHost(0);
 //    VM vm0 = host.getVM(0);