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 2015/11/20 22:01:56 UTC

[02/50] [abbrv] incubator-geode git commit: Revert "[GEODE-77] TCP check for health monitor"

Revert "[GEODE-77] TCP check for health monitor"

This reverts commit e267c88b134155eea6dab935a7a549c041e3e77e.

The revert is due to some test failures.


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

Branch: refs/heads/develop
Commit: 5db80554379f7d68292941de75473516069c812a
Parents: e267c88
Author: Jianxia Chen <jc...@pivotal.io>
Authored: Fri Oct 16 15:39:10 2015 -0700
Committer: Jianxia Chen <jc...@pivotal.io>
Committed: Fri Oct 16 15:39:10 2015 -0700

----------------------------------------------------------------------
 .../membership/gms/fd/GMSHealthMonitor.java     | 215 +------------------
 .../gms/interfaces/HealthMonitor.java           |  17 --
 .../membership/gms/membership/GMSJoinLeave.java | 103 ++-------
 .../gms/messages/InstallViewMessage.java        |  31 +--
 .../gms/messages/JoinRequestMessage.java        |  14 +-
 .../gms/messages/JoinResponseMessage.java       |  31 +--
 .../membership/GMSHealthMonitorJUnitTest.java   |  14 +-
 .../sanctionedDataSerializables.txt             |  38 ++--
 .../codeAnalysis/sanctionedSerializables.txt    |   5 +-
 9 files changed, 50 insertions(+), 418 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/5db80554/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/fd/GMSHealthMonitor.java
----------------------------------------------------------------------
diff --git a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/fd/GMSHealthMonitor.java b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/fd/GMSHealthMonitor.java
index 8eb4dbb..ae79fc5 100755
--- a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/fd/GMSHealthMonitor.java
+++ b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/fd/GMSHealthMonitor.java
@@ -4,13 +4,6 @@ import static com.gemstone.gemfire.internal.DataSerializableFixedID.CHECK_REQUES
 import static com.gemstone.gemfire.internal.DataSerializableFixedID.CHECK_RESPONSE;
 import static com.gemstone.gemfire.internal.DataSerializableFixedID.SUSPECT_MEMBERS_MESSAGE;
 
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.net.InetAddress;
-import java.net.InetSocketAddress;
-import java.net.ServerSocket;
-import java.net.Socket;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.HashMap;
@@ -31,7 +24,6 @@ import java.util.concurrent.atomic.AtomicInteger;
 
 import org.apache.logging.log4j.Logger;
 
-import com.gemstone.gemfire.SystemConnectException;
 import com.gemstone.gemfire.distributed.DistributedMember;
 import com.gemstone.gemfire.distributed.DistributedSystemDisconnectedException;
 import com.gemstone.gemfire.distributed.internal.DistributionMessage;
@@ -44,7 +36,6 @@ import com.gemstone.gemfire.distributed.internal.membership.gms.messages.CheckRe
 import com.gemstone.gemfire.distributed.internal.membership.gms.messages.CheckResponseMessage;
 import com.gemstone.gemfire.distributed.internal.membership.gms.messages.SuspectMembersMessage;
 import com.gemstone.gemfire.distributed.internal.membership.gms.messages.SuspectRequest;
-import com.gemstone.gemfire.internal.AvailablePort;
 import com.gemstone.gemfire.internal.concurrent.ConcurrentHashSet;
 
 /**
@@ -127,15 +118,6 @@ public class GMSHealthMonitor implements HealthMonitor, MessageHandler {
 
   /** test hook */
   boolean beingSick = false;
-  
-  // For TCP check
-  private ExecutorService serverSocketExecutor;
-  private static final int PING = 0x01;
-  private static final int PONG = 0x02;
-  private InetAddress ip;
-  private int socketPort;
-  private ServerSocket serverSocket;
-  private Map<InternalDistributedMember, InetSocketAddress> socketInfo = new ConcurrentHashMap<InternalDistributedMember, InetSocketAddress>();
 
   public GMSHealthMonitor() {
 
@@ -345,61 +327,6 @@ public class GMSHealthMonitor implements HealthMonitor, MessageHandler {
     return false;
   }
 
-  /**
-   * During final check, establish TCP connection between current member and suspect member.
-   * And exchange PING/PONG message to see if the suspect member is still alive.
-   * 
-   * @param suspectMember member that does not respond to CheckRequestMessage
-   * @return true if successfully exchanged PING/PONG with TCP connection, otherwise false.
-   */
-  private boolean doTCPCheckMember(InternalDistributedMember suspectMember) {
-    logger.trace("Checking member {} with TCP socket connection.", suspectMember);
-    Socket clientSocket = new Socket();
-    try {
-      // establish TCP connection
-      InetSocketAddress addr = socketInfo.get(suspectMember);
-      if (addr != null) {
-        logger.trace("Checking member {} with TCP socket connection {}:{}.", suspectMember, addr.getAddress(), addr.getPort());
-        clientSocket.connect(addr, (int) services.getConfig().getMemberTimeout());
-      }
-      if (clientSocket.isConnected()) {
-        clientSocket.setSoTimeout((int) services.getConfig().getMemberTimeout());
-        InputStream in = clientSocket.getInputStream();
-        OutputStream out = clientSocket.getOutputStream();
-        out.write(PING);
-        out.flush();
-        clientSocket.shutdownOutput();
-        logger.trace("Send {} to member {} with TCP socket connection.", PING, suspectMember);
-        int b = in.read();
-        logger.trace("Received {} from member {} with TCP socket connection.", b, suspectMember);
-        if (b == PONG) {
-          CustomTimeStamp ts = memberVsLastMsgTS.get(suspectMember);
-          if (ts != null) {
-            ts.setTimeStamp(System.currentTimeMillis());
-          }
-          return true;
-        } else {
-          // TODO: Received something other than PONG. Is it possible?
-          return false;
-        }
-      } else {// cannot establish TCP connection with suspect member
-        return false;
-      }
-    } catch (IOException e) {
-      logger.trace("Unexpected exception", e);
-    } finally {
-      try {
-        if (clientSocket != null) {
-          clientSocket.close();
-        }
-      } catch (IOException e) {
-        logger.trace("Unexpected exception", e);
-      }
-    }
-
-    return false;
-  }
-  
   /*
    * (non-Javadoc)
    * 
@@ -428,7 +355,7 @@ public class GMSHealthMonitor implements HealthMonitor, MessageHandler {
   }
 
   public void start() {
-    {      
+    {
       scheduler = Executors.newScheduledThreadPool(1, new ThreadFactory() {
         @Override
         public Thread newThread(Runnable r) {
@@ -469,108 +396,6 @@ public class GMSHealthMonitor implements HealthMonitor, MessageHandler {
       suspectRequestCollectorThread.setDaemon(true);
       suspectRequestCollectorThread.start();
     }
-    
-    {
-      serverSocketExecutor = Executors.newCachedThreadPool(new ThreadFactory() {
-        AtomicInteger threadIdx = new AtomicInteger();
-
-        @Override
-        public Thread newThread(Runnable r) {
-          int id = threadIdx.getAndIncrement();
-          Thread th = new Thread(Services.getThreadGroup(), r, "TCP Check ServerSocket Thread " + id);
-          th.setDaemon(true);
-          return th;
-        }
-      });
-
-      serverSocketExecutor.execute(new Runnable() {
-        @Override
-        public void run() {
-          Socket socket = null;
-          try {
-            // start server socket for TCP check
-            localAddress = services.getMessenger().getMemberID();            
-            ip = localAddress.getInetAddress();
-            int[] portRange = services.getConfig().getMembershipPortRange();
-            socketPort = AvailablePort.getAvailablePortInRange(portRange[0], portRange[1], AvailablePort.SOCKET);
-            if (socketPort == -1) {
-              throw new SystemConnectException("Unable to find a free port in the membership port range");
-            }
-            serverSocket = new ServerSocket(socketPort);
-            logger.debug("GMSHealthMonitor started server socket on {}:{}.", ip, socketPort);
-            socketInfo.put(localAddress, new InetSocketAddress(ip, socketPort));
-            while (!services.getCancelCriterion().isCancelInProgress() 
-                && !GMSHealthMonitor.this.isStopping && !GMSHealthMonitor.this.playingDead) {
-              try {
-                socket = serverSocket.accept();
-                if (GMSHealthMonitor.this.playingDead) {
-                  continue;
-                }
-                socket.setSoTimeout((int) services.getConfig().getMemberTimeout());
-                new ClientSocketHandler(socket).start();
-              } catch (IOException e) {
-                logger.trace("Unexpected exception", e);
-                try {
-                  if (socket != null) {
-                    socket.close();
-                  }
-                } catch (IOException ioe) {
-                  logger.trace("Unexpected exception", ioe);
-                }
-              }
-            }
-          } catch (IOException e) {
-            logger.trace("Unexpected exception", e);
-          } finally {
-            // close the server socket
-            if (serverSocket != null) {
-              try {
-                serverSocket.close();
-                logger.debug("GMSHealthMonitor server socket closed.");
-              } catch (IOException e) {
-                logger.debug("Unexpected exception", e);
-              }
-            }
-          }
-        }
-      });
-    }
-  }
-
-  class ClientSocketHandler extends Thread {
-
-    private Socket socket;
-
-    public ClientSocketHandler(Socket socket) {
-      super(services.getThreadGroup(), "ClientSocketHandler");
-      this.socket = socket;
-      setDaemon(true);
-    }
-
-    public void run() {
-      try {
-        InputStream in = socket.getInputStream();
-        OutputStream out = socket.getOutputStream();
-        int b = in.read();
-        logger.debug("GMSHealthMonitor server socket received {}.", b);
-        if (b == PING) {
-          out.write(PONG);
-          out.flush();
-          socket.shutdownOutput();
-          logger.debug("GMSHealthMonitor server socket replied {}.", PONG);
-        }
-      } catch (IOException e) {
-        logger.trace("Unexpected exception", e);
-      } finally {
-        if (socket != null) {
-          try {
-            socket.close();
-          } catch (IOException e) {
-            logger.info("Unexpected exception", e);
-          }
-        }
-      }
-    }
   }
 
   public synchronized void installView(NetView newView) {
@@ -694,18 +519,6 @@ public class GMSHealthMonitor implements HealthMonitor, MessageHandler {
       checkExecutor.shutdown();
     }
 
-    if (serverSocketExecutor != null) {
-      if (serverSocket != null) {
-        try {
-          serverSocket.close();
-        }
-        catch (IOException e) {
-          logger.trace("Unexpected exception", e);
-        }
-      }      
-      serverSocketExecutor.shutdownNow();
-    }
-    
     if (suspectRequestCollectorThread != null) {
       suspectRequestCollectorThread.shutdown();
     }
@@ -715,7 +528,7 @@ public class GMSHealthMonitor implements HealthMonitor, MessageHandler {
    * test method
    */
   public boolean isShutdown() {
-    return scheduler.isShutdown() && checkExecutor.isShutdown() && serverSocketExecutor.isShutdown() && !suspectRequestCollectorThread.isAlive();
+    return scheduler.isShutdown() && checkExecutor.isShutdown() && !suspectRequestCollectorThread.isAlive();
   }
 
   @Override
@@ -935,12 +748,7 @@ public class GMSHealthMonitor implements HealthMonitor, MessageHandler {
               memberVsLastMsgTS.put(mbr, ts);
 
               logger.info("Performing final check for suspect member {} reason={}", mbr, reason);
-              boolean pinged;
-              if (socketInfo.get(mbr) == null || socketInfo.get(mbr).getPort() < 0) {
-                pinged = GMSHealthMonitor.this.doCheckMember(mbr);
-              } else {
-                pinged = GMSHealthMonitor.this.doTCPCheckMember(mbr);
-              }
+              boolean pinged = GMSHealthMonitor.this.doCheckMember(mbr);
               if (!pinged && !isStopping) {
                 ts = memberVsLastMsgTS.get(mbr);
                 if (ts == null || ts.getTimeStamp() <= startTime) {
@@ -1105,21 +913,4 @@ public class GMSHealthMonitor implements HealthMonitor, MessageHandler {
     // TODO Auto-generated method stub
     
   }
-  
-  public Map<InternalDistributedMember, InetSocketAddress> getSocketInfo() {
-    return this.socketInfo;
-  }
-
-  public void installSocketInfo(List<InternalDistributedMember> members, List<Integer> portsForMembers) {
-    logger.info("members=" + members + " portsForMembers=" + portsForMembers);
-    logger.info("members.size()=" + members.size() + " portsForMembers.size()=" + portsForMembers.size());
-    for (int i = 0; i < members.size(); i++) {
-      if (portsForMembers.get(i) == -1) {
-        continue;
-      }
-      InetSocketAddress addr = new InetSocketAddress(members.get(i).getInetAddress(), portsForMembers.get(i));
-      socketInfo.put(members.get(i), addr);
-    }
-  }
-
 }

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/5db80554/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/interfaces/HealthMonitor.java
----------------------------------------------------------------------
diff --git a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/interfaces/HealthMonitor.java b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/interfaces/HealthMonitor.java
index 05e2d91..9ace2be 100755
--- a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/interfaces/HealthMonitor.java
+++ b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/interfaces/HealthMonitor.java
@@ -1,9 +1,5 @@
 package com.gemstone.gemfire.distributed.internal.membership.gms.interfaces;
 
-import java.net.InetSocketAddress;
-import java.util.List;
-import java.util.Map;
-
 import com.gemstone.gemfire.distributed.DistributedMember;
 import com.gemstone.gemfire.distributed.internal.membership.InternalDistributedMember;
 
@@ -38,17 +34,4 @@ public interface HealthMonitor extends Service {
    * ShutdownMessage has been received from the given member
    */
   public void memberShutdown(DistributedMember mbr, String reason);
-  
-  /**
-   * Returns a map that describes the members and their server sockets
-   */
-  public Map<InternalDistributedMember, InetSocketAddress> getSocketInfo();
-
-  /**
-   * Update the information of the members and their server sockets
-   * 
-   * @param members
-   * @param portsForMembers List of socket ports for each member
-   */
-  public void installSocketInfo(List<InternalDistributedMember> members, List<Integer> portsForMembers);
 }

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/5db80554/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSJoinLeave.java
----------------------------------------------------------------------
diff --git a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSJoinLeave.java b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSJoinLeave.java
index abe6b03..4ebc20c 100755
--- a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSJoinLeave.java
+++ b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSJoinLeave.java
@@ -19,7 +19,6 @@ import java.util.HashSet;
 import java.util.Iterator;
 import java.util.LinkedList;
 import java.util.List;
-import java.util.Map;
 import java.util.Set;
 import java.util.concurrent.Callable;
 import java.util.concurrent.ExecutionException;
@@ -281,10 +280,7 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
     logger.info("Attempting to join the distributed system through coordinator " + coord + " using address " + this.localAddress);
     JoinRequestMessage req = new JoinRequestMessage(coord, this.localAddress, 
         services.getAuthenticator().getCredentials(coord));
-    //add server socket port in the join request
-    if (services.getHealthMonitor().getSocketInfo().get(localAddress) != null) {
-      req.setSocketPort(services.getHealthMonitor().getSocketInfo().get(localAddress).getPort());
-    }
+
     services.getMessenger().send(req);
     
     JoinResponseMessage response = null;
@@ -326,7 +322,6 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
           this.localAddress.setVmViewId(this.birthViewId);
           GMSMember me = (GMSMember)this.localAddress.getNetMember();
           me.setBirthViewId(birthViewId);
-          services.getHealthMonitor().installSocketInfo(response.getCurrentView().getMembers(), response.getPortsForMembers());
           installView(response.getCurrentView());
         }
 
@@ -379,23 +374,6 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
     if (!this.localAddress.getNetMember().preferredForCoordinator() &&
         incomingRequest.getMemberID().getNetMember().preferredForCoordinator()) {
       JoinResponseMessage m = new JoinResponseMessage(incomingRequest.getMemberID(), currentView, true);
-      // add socket ports of all members to join response
-      List<Integer> portsForMembers = new ArrayList<Integer>(currentView.size());      
-      Map<InternalDistributedMember, InetSocketAddress> socketInfo = services.getHealthMonitor().getSocketInfo();      
-      for (InternalDistributedMember mbr : currentView.getMembers()) {
-        InetSocketAddress addr = socketInfo.get(mbr);
-        if (addr != null) {
-          portsForMembers.add(addr.getPort());
-        } else {          
-          if (incomingRequest.getMemberID().compareTo(mbr, true) == 0) {
-            portsForMembers.add(incomingRequest.getSocketPort());
-          }
-          else {
-            portsForMembers.add(-1);
-          }
-        }
-      }
-      m.setPortsForMembers(portsForMembers);
       services.getMessenger().send(m);
       return;
     }
@@ -599,10 +577,9 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
     }
   }
   
-  private void sendJoinResponses(List<InternalDistributedMember> newMbrs, NetView newView, List<Integer> portsForMembers) {
+  private void sendJoinResponses(List<InternalDistributedMember> newMbrs, NetView newView) {
     for (InternalDistributedMember mbr: newMbrs) {
       JoinResponseMessage response = new JoinResponseMessage(mbr, newView);
-      response.setPortsForMembers(portsForMembers);
       services.getMessenger().send(response);
     }
   }
@@ -617,44 +594,19 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
   }
   
   
-  boolean prepareView(NetView view, Collection<InternalDistributedMember> newMembers, List<DistributionMessage> requests) {
-    return sendView(view, newMembers, true, this.prepareProcessor, requests);
+  boolean prepareView(NetView view, Collection<InternalDistributedMember> newMembers) {
+    return sendView(view, newMembers, true, this.prepareProcessor);
   }
   
-  void sendView(NetView view, Collection<InternalDistributedMember> newMembers, List<DistributionMessage> requests) {
-    sendView(view, newMembers, false, this.viewProcessor, requests);
+  void sendView(NetView view, Collection<InternalDistributedMember> newMembers) {
+    sendView(view, newMembers, false, this.viewProcessor);
   }
   
   
-  boolean sendView(NetView view, Collection<InternalDistributedMember> newMembers, boolean preparing, ViewReplyProcessor rp, List<DistributionMessage> requests) {
+  boolean sendView(NetView view, Collection<InternalDistributedMember> newMembers, boolean preparing, ViewReplyProcessor rp) {
     int id = view.getViewId();
     InstallViewMessage msg = new InstallViewMessage(view, services.getAuthenticator().getCredentials(this.localAddress), preparing);
     Set<InternalDistributedMember> recips = new HashSet<>(view.getMembers());
-    // add socket ports of all members to InstallViewMessage
-    List<Integer> portsForMembers = new ArrayList<Integer>(view.size());
-    if (requests != null) {
-      Map<InternalDistributedMember, InetSocketAddress> socketInfo = services.getHealthMonitor().getSocketInfo();
-      for (InternalDistributedMember mbr : view.getMembers()) {
-        InetSocketAddress addr = socketInfo.get(mbr);
-        if (addr != null) {
-          portsForMembers.add(addr.getPort());
-        } else {
-          boolean found = false;
-          for (DistributionMessage req : requests) {
-            if (req instanceof JoinRequestMessage) {
-              if (((JoinRequestMessage) req).getMemberID().compareTo(mbr, false) == 0) {
-                portsForMembers.add(((JoinRequestMessage) req).getSocketPort());
-                found = true;
-              }
-            }
-          }
-          if (!found) {
-            portsForMembers.add(-1);
-          }
-        }
-      }
-      msg.setPortsForMembers(portsForMembers);
-    }
 
     // a recent member was seen not to receive a new view - I think this is why
 //    recips.removeAll(newMembers); // new members get the view in a JoinResponseMessage
@@ -668,9 +620,6 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
 
     if (preparing) {
       this.preparedView = view;
-      if (requests != null) {
-        services.getHealthMonitor().installSocketInfo(view.getMembers(), portsForMembers);
-      }
     } else {
       installView(view);
     }
@@ -737,9 +686,6 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
       }
       else {
         this.preparedView = view;
-        if (!m.getPortsForMembers().isEmpty()) {
-          services.getHealthMonitor().installSocketInfo(view.getMembers(), m.getPortsForMembers());
-        }
         ackView(m);
       }
     }
@@ -1609,7 +1555,7 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
       if (initialView != null) {
         try {
           prepareAndSendView(initialView, Collections.<InternalDistributedMember>emptyList(),
-            initialLeaving, initialRemovals, null);
+            initialLeaving, initialRemovals);
         } finally {
           this.initialView = null;
           this.initialLeaving = null;
@@ -1790,32 +1736,10 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
       // we want to always check for quorum loss but don't act on it
       // unless network-partition-detection is enabled
       if ( !(isNetworkPartition(newView) && quorumRequired) ) {
-        // add socket ports of all members to join response
-        List<Integer> portsForMembers = new ArrayList<Integer>(newView.size());        
-        Map<InternalDistributedMember, InetSocketAddress> socketInfo = services.getHealthMonitor().getSocketInfo();        
-        for (InternalDistributedMember mbr : newView.getMembers()) {
-          InetSocketAddress addr = socketInfo.get(mbr);
-          if (addr != null) {
-            portsForMembers.add(addr.getPort());
-          } else {
-            boolean found = false;
-            for (DistributionMessage req : requests) {
-              if (req instanceof JoinRequestMessage) {
-                if (((JoinRequestMessage) req).getMemberID().compareTo(mbr, true) == 0) {
-                  portsForMembers.add(((JoinRequestMessage) req).getSocketPort());
-                  found = true;
-                }
-              }
-            }
-            if (!found) {
-              portsForMembers.add(-1);
-            }
-          }
-        }
-        sendJoinResponses(joinReqs, newView, portsForMembers);
+        sendJoinResponses(joinReqs, newView);
       }
 
-      prepareAndSendView(newView, joinReqs, leaveReqs, newView.getCrashedMembers(), requests);
+      prepareAndSendView(newView, joinReqs, leaveReqs, newView.getCrashedMembers());
       return;
     }
     
@@ -1826,8 +1750,7 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
     void prepareAndSendView(NetView newView,
         List<InternalDistributedMember> joinReqs,
         Set<InternalDistributedMember> leaveReqs,
-        Set<InternalDistributedMember> removalReqs,
-        List<DistributionMessage> requests) {
+        Set<InternalDistributedMember> removalReqs) {
       boolean prepared = false;
       do {
         if (this.shutdown || Thread.currentThread().isInterrupted()) {
@@ -1850,7 +1773,7 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
           return;
         }
 
-        prepared = prepareView(newView, joinReqs, requests);
+        prepared = prepareView(newView, joinReqs);
         logger.debug("view preparation phase completed.  prepared={}", prepared);
 
         if (prepared) {
@@ -1902,7 +1825,7 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
       
       lastConflictingView = null;
       
-      sendView(newView, joinReqs, requests);
+      sendView(newView, joinReqs);
     }
     
     /**

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/5db80554/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messages/InstallViewMessage.java
----------------------------------------------------------------------
diff --git a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messages/InstallViewMessage.java b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messages/InstallViewMessage.java
index 5534ff8..fa9989f 100755
--- a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messages/InstallViewMessage.java
+++ b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messages/InstallViewMessage.java
@@ -3,21 +3,18 @@ package com.gemstone.gemfire.distributed.internal.membership.gms.messages;
 import java.io.DataInput;
 import java.io.DataOutput;
 import java.io.IOException;
-import java.util.ArrayList;
-import java.util.List;
 
 import com.gemstone.gemfire.DataSerializer;
 import com.gemstone.gemfire.distributed.internal.DistributionManager;
 import com.gemstone.gemfire.distributed.internal.HighPriorityDistributionMessage;
 import com.gemstone.gemfire.distributed.internal.membership.NetView;
-import com.gemstone.gemfire.internal.InternalDataSerializer;
+import com.gemstone.gemfire.distributed.internal.membership.gms.mgr.GMSMembershipManager;
 
 public class InstallViewMessage extends HighPriorityDistributionMessage {
 
   private NetView view;
   private Object credentials;
   private boolean preparing;
-  private List<Integer> portsForMembers = new ArrayList<Integer>();
 
   public InstallViewMessage(NetView view, Object credentials) {
     this.view = view;
@@ -57,29 +54,12 @@ public class InstallViewMessage extends HighPriorityDistributionMessage {
     throw new IllegalStateException("this message is not intended to execute in a thread pool");
   }
 
-  /** this will deserialize as an ArrayList */
-  private void writeAsArrayList(List list, DataOutput out) throws IOException {
-    int size;
-    if (list == null) {
-      size = -1;
-    } else {
-      size = list.size();
-    }
-    InternalDataSerializer.writeArrayLength(size, out);
-    if (size > 0) {
-      for (int i = 0; i < size; i++) {
-        DataSerializer.writeObject(list.get(i), out);
-      }
-    }
-  }
-  
   @Override
   public void toData(DataOutput out) throws IOException {
     super.toData(out);
     DataSerializer.writeObject(this.view, out);
     DataSerializer.writeObject(this.credentials, out);
     out.writeBoolean(preparing);
-    writeAsArrayList(portsForMembers, out);
   }
 
   @Override
@@ -88,22 +68,13 @@ public class InstallViewMessage extends HighPriorityDistributionMessage {
     this.view = DataSerializer.readObject(in);
     this.credentials = DataSerializer.readObject(in);
     this.preparing = in.readBoolean();
-    this.portsForMembers = DataSerializer.readArrayList(in);
   }
 
   @Override
   public String toString() {
     return "InstallViewMessage(preparing="+this.preparing+"; "+this.view
             +"; cred="+(credentials==null?"null": "not null")
-            + "portsForMembers: " + portsForMembers
              +")";
   }
 
-  public List<Integer> getPortsForMembers() {
-    return this.portsForMembers;
-  }
-
-  public void setPortsForMembers(List<Integer> portsForMembers) {
-    this.portsForMembers = portsForMembers;
-  }
 }

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/5db80554/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messages/JoinRequestMessage.java
----------------------------------------------------------------------
diff --git a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messages/JoinRequestMessage.java b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messages/JoinRequestMessage.java
index 952b20e..fc5faa6 100755
--- a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messages/JoinRequestMessage.java
+++ b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messages/JoinRequestMessage.java
@@ -13,7 +13,7 @@ import com.gemstone.gemfire.internal.Version;
 public class JoinRequestMessage extends HighPriorityDistributionMessage {
   private InternalDistributedMember memberID;
   private Object credentials;
-  private int socketPort = -1;
+
   
   public JoinRequestMessage(InternalDistributedMember coord,
       InternalDistributedMember id, Object credentials) {
@@ -47,7 +47,7 @@ public class JoinRequestMessage extends HighPriorityDistributionMessage {
   
   @Override
   public String toString() {
-    return getShortClassName() + "(" + memberID + (credentials==null? ")" : "; with credentials)") + " socketPort:" + socketPort;
+    return getShortClassName() + "(" + memberID + (credentials==null? ")" : "; with credentials)");
   }
 
   @Override
@@ -59,7 +59,6 @@ public class JoinRequestMessage extends HighPriorityDistributionMessage {
   public void toData(DataOutput out) throws IOException {
     DataSerializer.writeObject(memberID, out);
     DataSerializer.writeObject(credentials, out);
-    DataSerializer.writePrimitiveInt(socketPort, out);
     // preserve the multicast setting so the receiver can tell
     // if this is a mcast join request
     out.writeBoolean(getMulticast());
@@ -69,16 +68,7 @@ public class JoinRequestMessage extends HighPriorityDistributionMessage {
   public void fromData(DataInput in) throws IOException, ClassNotFoundException {
     memberID = DataSerializer.readObject(in);
     credentials = DataSerializer.readObject(in);
-    socketPort = DataSerializer.readPrimitiveInt(in);
     setMulticast(in.readBoolean());
   }
 
-  public int getSocketPort() {
-    return socketPort;
-  }
-
-  public void setSocketPort(int socketPort) {
-    this.socketPort = socketPort;
-  }
-  
 }

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/5db80554/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messages/JoinResponseMessage.java
----------------------------------------------------------------------
diff --git a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messages/JoinResponseMessage.java b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messages/JoinResponseMessage.java
index c405333..d85229c 100755
--- a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messages/JoinResponseMessage.java
+++ b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messages/JoinResponseMessage.java
@@ -3,15 +3,13 @@ package com.gemstone.gemfire.distributed.internal.membership.gms.messages;
 import java.io.DataInput;
 import java.io.DataOutput;
 import java.io.IOException;
-import java.util.ArrayList;
-import java.util.List;
 
 import com.gemstone.gemfire.DataSerializer;
 import com.gemstone.gemfire.distributed.internal.DistributionManager;
 import com.gemstone.gemfire.distributed.internal.HighPriorityDistributionMessage;
 import com.gemstone.gemfire.distributed.internal.membership.InternalDistributedMember;
 import com.gemstone.gemfire.distributed.internal.membership.NetView;
-import com.gemstone.gemfire.internal.InternalDataSerializer;
+import com.gemstone.gemfire.internal.DataSerializableFixedID;
 import com.gemstone.gemfire.internal.Version;
 
 public class JoinResponseMessage extends HighPriorityDistributionMessage {
@@ -21,7 +19,6 @@ public class JoinResponseMessage extends HighPriorityDistributionMessage {
   private InternalDistributedMember memberID;
   private Object messengerData;
   private boolean becomeCoordinator;
-  private List<Integer> portsForMembers = new ArrayList<Integer>();
   
   public JoinResponseMessage(InternalDistributedMember memberID, NetView view) {
     this.currentView = view;
@@ -77,7 +74,6 @@ public class JoinResponseMessage extends HighPriorityDistributionMessage {
   public String toString() {
     return getShortClassName() + "("+memberID + "; "
         + (currentView==null? "" : currentView.toString())
-        + "portsForMembers: " + portsForMembers
         + (rejectionMessage==null? "" : ("; "+rejectionMessage))
         + (becomeCoordinator? "; becomeCoordinator" : "")
         + ")";
@@ -93,27 +89,10 @@ public class JoinResponseMessage extends HighPriorityDistributionMessage {
     return JOIN_RESPONSE;
   }
 
-  /** this will deserialize as an ArrayList */
-  private void writeAsArrayList(List list, DataOutput out) throws IOException {
-    int size;
-    if (list == null) {
-      size = -1;
-    } else {
-      size = list.size();
-    }
-    InternalDataSerializer.writeArrayLength(size, out);
-    if (size > 0) {
-      for (int i = 0; i < size; i++) {
-        DataSerializer.writeObject(list.get(i), out);
-      }
-    }
-  }
-  
   @Override
   public void toData(DataOutput out) throws IOException {
     DataSerializer.writeObject(currentView, out);
     DataSerializer.writeObject(memberID, out);
-    writeAsArrayList(portsForMembers, out);
     out.writeBoolean(becomeCoordinator);
     DataSerializer.writeString(rejectionMessage, out);
     DataSerializer.writeObject(messengerData, out);
@@ -123,17 +102,9 @@ public class JoinResponseMessage extends HighPriorityDistributionMessage {
   public void fromData(DataInput in) throws IOException, ClassNotFoundException {
     currentView = DataSerializer.readObject(in);
     memberID = DataSerializer.readObject(in);
-    portsForMembers = DataSerializer.readArrayList(in);
     becomeCoordinator = in.readBoolean();
     rejectionMessage = DataSerializer.readString(in);
     messengerData = DataSerializer.readObject(in);
   }
 
-  public void setPortsForMembers(List<Integer> portsForMembers) {
-    this.portsForMembers = portsForMembers;
-  }
-
-  public List<Integer> getPortsForMembers() {
-    return this.portsForMembers;
-  }
 }

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/5db80554/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSHealthMonitorJUnitTest.java
----------------------------------------------------------------------
diff --git a/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSHealthMonitorJUnitTest.java b/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSHealthMonitorJUnitTest.java
index cf95817..ae77b81 100644
--- a/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSHealthMonitorJUnitTest.java
+++ b/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSHealthMonitorJUnitTest.java
@@ -46,11 +46,9 @@ public class GMSHealthMonitorJUnitTest {
   private GMSJoinLeave joinLeave;
   private GMSHealthMonitor gmsHealthMonitor;
   final long memberTimeout = 1000l;
-  private int[] portRange= new int[]{0, 65535};
 
   @Before
   public void initMocks() throws UnknownHostException {
-    System.setProperty("gemfire.bind-address", "localhost");
     mockDistConfig = mock(DistributionConfig.class);
     mockConfig = mock(ServiceConfig.class);
     messenger = mock(Messenger.class);
@@ -60,13 +58,11 @@ public class GMSHealthMonitorJUnitTest {
 
     when(mockConfig.getDistributionConfig()).thenReturn(mockDistConfig);
     when(mockConfig.getMemberTimeout()).thenReturn(memberTimeout);
-    when(mockConfig.getMembershipPortRange()).thenReturn(portRange);
     when(services.getConfig()).thenReturn(mockConfig);
     when(services.getMessenger()).thenReturn(messenger);
     when(services.getJoinLeave()).thenReturn(joinLeave);
     when(services.getCancelCriterion()).thenReturn(stopper);
     when(stopper.isCancelInProgress()).thenReturn(false);
-    
 
     if (mockMembers == null) {
       mockMembers = new ArrayList<InternalDistributedMember>();
@@ -80,7 +76,7 @@ public class GMSHealthMonitorJUnitTest {
         mockMembers.add(mbr);
       }
     }
-    when(joinLeave.getMemberID()).thenReturn(mockMembers.get(3));
+
     gmsHealthMonitor = new GMSHealthMonitor();
     gmsHealthMonitor.init(services);
     gmsHealthMonitor.start();
@@ -320,7 +316,7 @@ public class GMSHealthMonitorJUnitTest {
 
     try {
       // this happens after final check, ping timeout
-      Thread.sleep(memberTimeout);
+      Thread.sleep(150l);
     } catch (InterruptedException e) {
     }
 
@@ -356,7 +352,7 @@ public class GMSHealthMonitorJUnitTest {
 
     try {
       // this happens after final check, ping timeout
-      Thread.sleep(memberTimeout);
+      Thread.sleep(90l);
     } catch (InterruptedException e) {
     }
 
@@ -393,8 +389,8 @@ public class GMSHealthMonitorJUnitTest {
     gmsHealthMonitor.processMessage(sm);
 
     try {
-      // this happens after final check, ping timeout = 1000 ms
-      Thread.sleep(memberTimeout);
+      // this happens after final check, ping timeout = 100 ms
+      Thread.sleep(110l);
     } catch (InterruptedException e) {
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/5db80554/gemfire-core/src/test/resources/com/gemstone/gemfire/codeAnalysis/sanctionedDataSerializables.txt
----------------------------------------------------------------------
diff --git a/gemfire-core/src/test/resources/com/gemstone/gemfire/codeAnalysis/sanctionedDataSerializables.txt b/gemfire-core/src/test/resources/com/gemstone/gemfire/codeAnalysis/sanctionedDataSerializables.txt
index 874069d..7210d9e 100644
--- a/gemfire-core/src/test/resources/com/gemstone/gemfire/codeAnalysis/sanctionedDataSerializables.txt
+++ b/gemfire-core/src/test/resources/com/gemstone/gemfire/codeAnalysis/sanctionedDataSerializables.txt
@@ -373,16 +373,16 @@ fromData,11,2a2bb9000e0100b50002b1
 toData,11,2b2ab40002b9000d0200b1
 
 com/gemstone/gemfire/distributed/internal/membership/gms/messages/InstallViewMessage,2
-fromData,43,2a2bb700122a2bb80013c00014b500052a2bb80013b500072a2bb900150100b500062a2bb80016b50004b1
-toData,41,2a2bb7000f2ab400052bb8000e2ab400072bb8000e2b2ab40006b9001002002a2ab400042bb70011b1
+fromData,35,2a2bb7000b2a2bb8000cc0000db500022a2bb8000cb500042a2bb9000e0100b50003b1
+toData,32,2a2bb700082ab400022bb800092ab400042bb800092b2ab40003b9000a0200b1
 
 com/gemstone/gemfire/distributed/internal/membership/gms/messages/JoinRequestMessage,2
-fromData,38,2a2bb80018c00019b500042a2bb80018b500052a2bb8001ab500022a2bb9001b0100b6001cb1
-toData,35,2ab400042bb800142ab400052bb800142ab400022bb800152b2ab60016b900170200b1
+fromData,30,2a2bb80014c00015b500032a2bb80014b500042a2bb900160100b60017b1
+toData,27,2ab400032bb800112ab400042bb800112b2ab60012b900130200b1
 
 com/gemstone/gemfire/distributed/internal/membership/gms/messages/JoinResponseMessage,2
-fromData,57,2a2bb80022c00023b500052a2bb80022c00024b500062a2bb80025b500042a2bb900260100b500082a2bb80027b500092a2bb80022b5000ab1
-toData,52,2ab400052bb8001e2ab400062bb8001e2a2ab400042bb7001f2b2ab40008b9002002002ab400092bb800212ab4000a2bb8001eb1
+fromData,49,2a2bb8001ac0001bb500022a2bb8001ac0001cb500032a2bb9001d0100b500052a2bb8001eb500062a2bb8001ab50007b1
+toData,43,2ab400022bb800172ab400032bb800172b2ab40005b9001802002ab400062bb800192ab400072bb80017b1
 
 com/gemstone/gemfire/distributed/internal/membership/gms/messages/LeaveRequestMessage,2
 fromData,20,2a2bb8000bc0000cb500032a2bb8000db50004b1
@@ -400,6 +400,10 @@ com/gemstone/gemfire/distributed/internal/membership/gms/messages/ViewAckMessage
 fromData,37,2a2bb7000d2a2bb9000e0100b500032a2bb9000f0100b500042a2bb80010c00011b50005b1
 toData,34,2a2bb700092b2ab40003b9000a02002b2ab40004b9000b02002ab400052bb8000cb1
 
+com/gemstone/gemfire/distributed/internal/membership/gms/mgr/FakeViewMessage,2
+fromData,8,bb000759b70008bf
+toData,8,bb000759b70008bf
+
 com/gemstone/gemfire/distributed/internal/membership/gms/mgr/LocalViewMessage,2
 fromData,8,bb000759b70008bf
 toData,8,bb000759b70008bf
@@ -895,8 +899,8 @@ fromData,1,b1
 toData,1,b1
 
 com/gemstone/gemfire/internal/cache/AbstractRegion,2
-toData,6,2a2bb8017cb1
-fromData,8,bb017d59b7017ebf
+toData,6,2a2bb80188b1
+fromData,8,bb018959b7018abf
 
 com/gemstone/gemfire/internal/cache/AbstractUpdateOperation$AbstractUpdateMessage,2
 fromData,16,2a2bb700192a2bb9001a0100b5000db1
@@ -906,6 +910,14 @@ com/gemstone/gemfire/internal/cache/AddCacheServerProfileMessage,2
 fromData,16,2a2bb7002f2a2bb900300100b50007b1
 toData,16,2a2bb7002d2b2ab40007b9002e0200b1
 
+com/gemstone/gemfire/internal/cache/ClientRegionEventImpl,2
+fromData,14,2a2bb700132a2bb80014b60003b1
+toData,14,2a2bb700112ab6000d2bb80012b1
+
+com/gemstone/gemfire/internal/cache/CacheServerAdvisor$CacheServerProfile,2
+fromData,53,2a2bb700102a2bb80011b500042a2bb900120100b500062abb001359b70014b500052ab400052bb800152a2bb900160100b60017b1
+toData,42,2a2bb7000a2ab400042bb8000b2b2ab40006b9000c02002ab400052bb8000d2b2ab6000eb9000f0300b1
+
 com/gemstone/gemfire/internal/cache/BucketAdvisor$BucketProfile,2
 fromData,36,2a2bb700132a2bb900140100b500042a2bb900140100b500062a2bb900140100b50012b1
 toData,36,2a2bb700152b2ab40004b9001602002b2ab40006b9001602002b2ab40012b900160200b1
@@ -926,14 +938,6 @@ com/gemstone/gemfire/internal/cache/CacheDistributionAdvisor$CacheProfile,2
 fromData,94,2a2bb700622bb9006301003d2a1cb6001b2a1cb700649900162abb006559b70066b500262ab400262bb800672a1cb7006899000e2a2bb80069c0006ab5000d2a1cb7006b99000e2a2bb80069c0006ab5000e2a2bb80069c0006cb50016b1
 toData,81,2a2bb7005b2b2ab6001ab9005c02002ab40026c6000b2ab400262bb8005d2ab4000db9002c01009a000c2a2ab4000d2bb7005e2ab4000eb9002c01009a000c2a2ab4000e2bb7005e2ab400162bb8005fb1
 
-com/gemstone/gemfire/internal/cache/CacheServerAdvisor$CacheServerProfile,2
-fromData,53,2a2bb700102a2bb80011b500042a2bb900120100b500062abb001359b70014b500052ab400052bb800152a2bb900160100b60017b1
-toData,42,2a2bb7000a2ab400042bb8000b2b2ab40006b9000c02002ab400052bb8000d2b2ab6000eb9000f0300b1
-
-com/gemstone/gemfire/internal/cache/ClientRegionEventImpl,2
-fromData,14,2a2bb700132a2bb80014b60003b1
-toData,14,2a2bb700112ab6000d2bb80012b1
-
 com/gemstone/gemfire/internal/cache/CloseCacheMessage,2
 fromData,16,2a2bb700172a2bb900180100b50002b1
 toData,16,2a2bb700192b2ab40002b9001a0200b1
@@ -1304,7 +1308,7 @@ fromData,242,2a2bb700712a2bb80072b600732bb9007401003d2a1cb200757e91b500042a2bb80
 toData,252,2a03b500082a2bb700892ab6008a2bb8008b2ab400043d2ab40024c600091cb20079803d2ab4007cc600091cb2007b803d2ab4002bc600091cb20086803d2b1cb9008c02002ab6008d2bb8008b2b2ab40020b9008e03002b2ab40022b4008fb9008c02002ab40024c6000b2ab400242bb8008b2ab4007cc6000b2ab4007c2bb8008b2ab400262bb800902ab4000ec6000b2ab4000e2bb8008b2ab4000799002a2b2ab4000599000704a7000403b9008c02002ab40005b800913e1d2ab700922ab600932bb800942ab400042ab4006f2ab600952bb800942ab4000bb60096c6000e2ab4000bb600962bb800972ab4002bc6000b2ab4002b2bb8008bb1
 
 com/gemstone/gemfire/internal/cache/RemotePutMessage$PutReplyMessage,2
-fromData,81,2a2bb700252bb9002601001100ff7e913d2a1c047e99000704a7000403b500032a2bb900260100b80027b500022a2bb80028b500061c057e9900181c077e99000704a70004033e2a1d2bb80029b50007b1
+fromData,81,2a2bb700272bb9002801001100ff7e913d2a1c047e99000704a7000403b500032a2bb900280100b80029b500022a2bb8002ab500061c057e9900181c077e99000704a70004033e2a1d2bb8002bb50007b1
 toData,94,2a2bb70032033d2ab400039900081c0480913d2ab40007c600081c0580913d2ab40007c100339900081c0780913d2b1cb9003402002b2ab40002b40035b9003402002b2ab600362ab40037b800382ab40007c6000b2ab400072bb80039b1
 
 com/gemstone/gemfire/internal/cache/RemoteRegionOperation,2

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/5db80554/gemfire-core/src/test/resources/com/gemstone/gemfire/codeAnalysis/sanctionedSerializables.txt
----------------------------------------------------------------------
diff --git a/gemfire-core/src/test/resources/com/gemstone/gemfire/codeAnalysis/sanctionedSerializables.txt b/gemfire-core/src/test/resources/com/gemstone/gemfire/codeAnalysis/sanctionedSerializables.txt
index 3e30605..6b10ea1 100644
--- a/gemfire-core/src/test/resources/com/gemstone/gemfire/codeAnalysis/sanctionedSerializables.txt
+++ b/gemfire-core/src/test/resources/com/gemstone/gemfire/codeAnalysis/sanctionedSerializables.txt
@@ -218,7 +218,6 @@ com/gemstone/gemfire/cache/query/internal/utils/PDXUtils$1,false
 com/gemstone/gemfire/cache/query/internal/utils/PDXUtils$2,false
 com/gemstone/gemfire/cache/snapshot/SnapshotOptions$SnapshotFormat,false
 com/gemstone/gemfire/cache/util/BoundedLinkedHashMap,true,-3419897166186852692,_maximumNumberOfEntries:int
-com/gemstone/gemfire/cache/util/Gateway$OrderPolicy,false
 com/gemstone/gemfire/cache/wan/GatewaySender$OrderPolicy,false
 com/gemstone/gemfire/compression/CompressionException,true,4118639654597191235
 com/gemstone/gemfire/compression/SnappyCompressor,true,496609875302446099
@@ -831,5 +830,9 @@ com/gemstone/gemfire/security/AuthenticationFailedException,true,-82028664722790
 com/gemstone/gemfire/security/AuthenticationRequiredException,true,4675976651103154919
 com/gemstone/gemfire/security/GemFireSecurityException,true,3814254578203076926
 com/gemstone/gemfire/security/NotAuthorizedException,true,419215768216387745,principal:java/security/Principal
+com/gemstone/java/util/concurrent/SynchronousQueueNoSpin,true,-3223113410248163686,qlock:java/util/concurrent/locks/ReentrantLock,waitingConsumers:com/gemstone/java/util/concurrent/SynchronousQueueNoSpin$WaitQueue,waitingProducers:com/gemstone/java/util/concurrent/SynchronousQueueNoSpin$WaitQueue
+com/gemstone/java/util/concurrent/SynchronousQueueNoSpin$FifoWaitQueue,true,-3623113410248163686
+com/gemstone/java/util/concurrent/SynchronousQueueNoSpin$LifoWaitQueue,true,-3633113410248163686
+com/gemstone/java/util/concurrent/SynchronousQueueNoSpin$WaitQueue,true,423369940180943459
 com/gemstone/org/apache/logging/log4j/message/GemFireParameterizedMessage,true,-665975803997290697,messagePattern:java/lang/String,stringArgs:java/lang/String[]
 com/gemstone/org/apache/logging/log4j/message/GemFireParameterizedMessageFactory,true,1