You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by hi...@apache.org on 2016/02/18 01:01:37 UTC

incubator-geode git commit: GEODE-968 Fixed typo in api name and added unit test.

Repository: incubator-geode
Updated Branches:
  refs/heads/develop fd31ea5bb -> b9fe0919b


GEODE-968 Fixed typo in api name and added unit test.


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

Branch: refs/heads/develop
Commit: b9fe0919b2f117151845730e157bf38d50a2181c
Parents: fd31ea5
Author: Hitesh Khamesra <hk...@pivotal.io>
Authored: Wed Feb 17 16:00:24 2016 -0800
Committer: Hitesh Khamesra <hk...@pivotal.io>
Committed: Wed Feb 17 16:00:24 2016 -0800

----------------------------------------------------------------------
 .../gemfire/distributed/internal/DMStats.java   |  3 +-
 .../distributed/internal/DistributionStats.java | 16 ++--
 .../internal/LonerDistributionManager.java      |  4 +-
 .../gms/messenger/JGroupsMessenger.java         |  2 +-
 .../messenger/JGroupsMessengerJUnitTest.java    | 86 ++++++++++++--------
 5 files changed, 66 insertions(+), 45 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/b9fe0919/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/DMStats.java
----------------------------------------------------------------------
diff --git a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/DMStats.java b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/DMStats.java
index c241bc7..6091b83 100644
--- a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/DMStats.java
+++ b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/DMStats.java
@@ -172,7 +172,8 @@ public interface DMStats {
 
   public void incMessageChannelTime(long val);
 
-  public void incUDPDispachRequestTime(long val);
+  public void incUDPDispatchRequestTime(long val);
+  public long getUDPDispatchRequestTime();
   
   public long getReplyMessageTime();
   public void incReplyMessageTime(long val);

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/b9fe0919/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/DistributionStats.java
----------------------------------------------------------------------
diff --git a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/DistributionStats.java b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/DistributionStats.java
index 634929e..6750a54 100644
--- a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/DistributionStats.java
+++ b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/DistributionStats.java
@@ -61,7 +61,7 @@ public class DistributionStats implements DMStats {
   private final static int processedMessagesTimeId;
   private final static int messageProcessingScheduleTimeId;
   private final static int messageChannelTimeId;
-  private final static int udpDispachRequestTimeId;
+  private final static int udpDispatchRequestTimeId;
   private final static int replyMessageTimeId;
   private final static int distributeMessageTimeId;
   private final static int nodesId;
@@ -273,7 +273,7 @@ public class DistributionStats implements DMStats {
     final String functionExecutionThreadsDesc = "The number of threads currently processing function execution messages.";
     final String waitingThreadsDesc = "The number of threads currently processing messages that had to wait for a resource.";
     final String messageChannelTimeDesc = "The total amount of time received messages spent in the distribution channel";
-    final String udpDispachRequestTimeDesc = "The total amount of time spent deserializing and dispatching UDP messages in the message-reader thread.";
+    final String udpDispatchRequestTimeDesc = "The total amount of time spent deserializing and dispatching UDP messages in the message-reader thread.";
     final String replyMessageTimeDesc = "The amount of time spent processing reply messages. This includes both processedMessagesTime and messageProcessingScheduleTime.";
     final String distributeMessageTimeDesc = "The amount of time it takes to prepare a message and send it on the network.  This includes sentMessagesTime.";
     final String nodesDesc = "The current number of nodes in this distributed system.";
@@ -411,7 +411,7 @@ public class DistributionStats implements DMStats {
         f.createIntGauge("functionExecutionThreads", functionExecutionThreadsDesc, "threads"),
         f.createIntGauge("waitingThreads", waitingThreadsDesc, "threads"),
         f.createLongCounter("messageChannelTime", messageChannelTimeDesc, "nanoseconds", false),
-        f.createLongCounter("udpDispachRequestTime", udpDispachRequestTimeDesc, "nanoseconds", false),
+        f.createLongCounter("udpDispatchRequestTime", udpDispatchRequestTimeDesc, "nanoseconds", false),
         f.createLongCounter("replyMessageTime", replyMessageTimeDesc, "nanoseconds", false),
         f.createLongCounter("distributeMessageTime", distributeMessageTimeDesc, "nanoseconds", false),
         f.createIntGauge("nodes", nodesDesc, "nodes"),
@@ -575,7 +575,7 @@ public class DistributionStats implements DMStats {
     messageProcessingScheduleTimeId =
       type.nameToId("messageProcessingScheduleTime");
     messageChannelTimeId = type.nameToId("messageChannelTime");
-    udpDispachRequestTimeId = type.nameToId("udpDispachRequestTime");
+    udpDispatchRequestTimeId = type.nameToId("udpDispatchRequestTime");
     replyMessageTimeId = type.nameToId("replyMessageTime");
     distributeMessageTimeId = type.nameToId("distributeMessageTime");
     nodesId = type.nameToId("nodes");
@@ -1083,12 +1083,16 @@ public class DistributionStats implements DMStats {
     }
   }
   
-  public void incUDPDispachRequestTime(long delta) {
+  public void incUDPDispatchRequestTime(long delta) {
     if (enableClockStats) {
-      this.stats.incLong(udpDispachRequestTimeId, delta);
+      this.stats.incLong(udpDispatchRequestTimeId, delta);
     }
   }
 
+  public long getUDPDispatchRequestTime() {
+    return this.stats.getLong(udpDispatchRequestTimeId);
+  }
+  
   public long getReplyMessageTime() {
     return this.stats.getLong(replyMessageTimeId);
   }

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/b9fe0919/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/LonerDistributionManager.java
----------------------------------------------------------------------
diff --git a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/LonerDistributionManager.java b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/LonerDistributionManager.java
index 50c07de..c958028 100644
--- a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/LonerDistributionManager.java
+++ b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/LonerDistributionManager.java
@@ -363,7 +363,9 @@ public class LonerDistributionManager implements DM {
     @Override
     public void incMessageChannelTime(long val) {}
     @Override
-    public void incUDPDispachRequestTime(long val) {};
+    public void incUDPDispatchRequestTime(long val) {};
+    @Override
+    public long getUDPDispatchRequestTime() {return 0;};
     @Override
     public long getReplyMessageTime() {return 0;}
     @Override

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/b9fe0919/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/JGroupsMessenger.java
----------------------------------------------------------------------
diff --git a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/JGroupsMessenger.java b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/JGroupsMessenger.java
index b9fcc38..f3ba7a2 100755
--- a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/JGroupsMessenger.java
+++ b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/JGroupsMessenger.java
@@ -1082,7 +1082,7 @@ public class JGroupsMessenger implements Messenger {
         }
       }finally {
         long delta = DistributionStats.getStatTime() - startTime ;
-        JGroupsMessenger.this.services.getStatistics().incUDPDispachRequestTime(delta);
+        JGroupsMessenger.this.services.getStatistics().incUDPDispatchRequestTime(delta);
       }
     }
     

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/b9fe0919/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/JGroupsMessengerJUnitTest.java
----------------------------------------------------------------------
diff --git a/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/JGroupsMessengerJUnitTest.java b/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/JGroupsMessengerJUnitTest.java
index f30efc8..3dcf035 100755
--- a/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/JGroupsMessengerJUnitTest.java
+++ b/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/JGroupsMessengerJUnitTest.java
@@ -49,11 +49,14 @@ import org.junit.experimental.categories.Category;
 import com.gemstone.gemfire.ForcedDisconnectException;
 import com.gemstone.gemfire.GemFireIOException;
 import com.gemstone.gemfire.distributed.DistributedSystemDisconnectedException;
+import com.gemstone.gemfire.distributed.internal.DM;
 import com.gemstone.gemfire.distributed.internal.DMStats;
 import com.gemstone.gemfire.distributed.internal.DistributionConfig;
 import com.gemstone.gemfire.distributed.internal.DistributionConfigImpl;
 import com.gemstone.gemfire.distributed.internal.DistributionManager;
 import com.gemstone.gemfire.distributed.internal.DistributionMessage;
+import com.gemstone.gemfire.distributed.internal.DistributionStats;
+import com.gemstone.gemfire.distributed.internal.InternalDistributedSystem;
 import com.gemstone.gemfire.distributed.internal.SerialAckedMessage;
 import com.gemstone.gemfire.distributed.internal.membership.InternalDistributedMember;
 import com.gemstone.gemfire.distributed.internal.membership.NetView;
@@ -78,6 +81,8 @@ import com.gemstone.gemfire.internal.admin.remote.RemoteTransportConfig;
 import com.gemstone.gemfire.internal.cache.DistributedCacheOperation;
 import com.gemstone.gemfire.test.junit.categories.IntegrationTest;
 
+import junit.framework.Assert;
+
 @Category(IntegrationTest.class)
 public class JGroupsMessengerJUnitTest {
   private Services services;
@@ -87,7 +92,7 @@ public class JGroupsMessengerJUnitTest {
   private Stopper stopper;
   private HealthMonitor healthMonitor;
   private InterceptUDP interceptor;
-
+  private long statsId = 123;
 
   /**
    * Create stub and mock objects
@@ -127,7 +132,9 @@ public class JGroupsMessengerJUnitTest {
     when(services.getHealthMonitor()).thenReturn(healthMonitor);
     when(services.getManager()).thenReturn(manager);
     when(services.getJoinLeave()).thenReturn(joinLeave);
-    when(services.getStatistics()).thenReturn(mock(DMStats.class));
+    DM dm = mock(DM.class);
+    InternalDistributedSystem system = InternalDistributedSystem.newInstanceForTesting(dm, nonDefault);
+    when(services.getStatistics()).thenReturn(new DistributionStats(system, statsId));
     
     messenger = new JGroupsMessenger();
     messenger.init(services);
@@ -747,40 +754,47 @@ public class JGroupsMessengerJUnitTest {
   
   @Test
   public void testReceiver() throws Exception {
-    initMocks(false);
-    JGroupsReceiver receiver = (JGroupsReceiver)messenger.myChannel.getReceiver();
-    
-    // a zero-length message is ignored
-    Message msg = new Message(new JGAddress(messenger.getMemberID()));
-    Object result = messenger.readJGMessage(msg);
-    assertNull(result);
-    
-    // for code coverage we need to pump this message through the receiver
-    receiver.receive(msg);
-    
-    // for more code coverage we need to actually set a buffer in the message
-    msg.setBuffer(new byte[0]);
-    result = messenger.readJGMessage(msg);
-    assertNull(result);
-    receiver.receive(msg);
-    
-    // now create a view and a real distribution-message
-    InternalDistributedMember myAddress = messenger.getMemberID();
-    InternalDistributedMember other = createAddress(8888);
-    NetView v = new NetView(myAddress);
-    v.add(other);
-    when(joinLeave.getView()).thenReturn(v);
-    messenger.installView(v);
-
-    List<InternalDistributedMember> recipients = v.getMembers();
-    SerialAckedMessage dmsg = new SerialAckedMessage();
-    dmsg.setRecipients(recipients);
-
-    // a message is ignored during manager shutdown
-    msg = messenger.createJGMessage(dmsg, new JGAddress(other), Version.CURRENT_ORDINAL);
-    when(manager.shutdownInProgress()).thenReturn(Boolean.TRUE);
-    receiver.receive(msg);
-    verify(manager, never()).processMessage(isA(DistributionMessage.class));
+    try {
+      DistributionStats.enableClockStats = true;
+      initMocks(false);
+      JGroupsReceiver receiver = (JGroupsReceiver)messenger.myChannel.getReceiver();
+      
+      // a zero-length message is ignored
+      Message msg = new Message(new JGAddress(messenger.getMemberID()));
+      Object result = messenger.readJGMessage(msg);
+      assertNull(result);
+      
+      // for code coverage we need to pump this message through the receiver
+      receiver.receive(msg);
+      
+      // for more code coverage we need to actually set a buffer in the message
+      msg.setBuffer(new byte[0]);
+      result = messenger.readJGMessage(msg);
+      assertNull(result);
+      receiver.receive(msg);
+      
+      // now create a view and a real distribution-message
+      InternalDistributedMember myAddress = messenger.getMemberID();
+      InternalDistributedMember other = createAddress(8888);
+      NetView v = new NetView(myAddress);
+      v.add(other);
+      when(joinLeave.getView()).thenReturn(v);
+      messenger.installView(v);
+  
+      List<InternalDistributedMember> recipients = v.getMembers();
+      SerialAckedMessage dmsg = new SerialAckedMessage();
+      dmsg.setRecipients(recipients);
+  
+      // a message is ignored during manager shutdown
+      msg = messenger.createJGMessage(dmsg, new JGAddress(other), Version.CURRENT_ORDINAL);
+      when(manager.shutdownInProgress()).thenReturn(Boolean.TRUE);
+      receiver.receive(msg);
+      verify(manager, never()).processMessage(isA(DistributionMessage.class));
+      
+      assertTrue("There should be UDPDispatchRequestTime stats", services.getStatistics().getUDPDispatchRequestTime() > 0);
+    }finally {
+      DistributionStats.enableClockStats = false;
+    }
   }
   
   @Test