geode-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From hiteshkhame...@apache.org
Subject [23/24] incubator-geode git commit: GEODE-1372 Fixed review comments.
Date Mon, 29 Aug 2016 21:39:25 GMT
GEODE-1372 Fixed review comments.

Added api docs. Removed statis in GMSEncrpt and made that functionality
in GMSLocator. Added system property for #of encryptors. Fixed test
issue


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

Branch: refs/heads/develop
Commit: 5cb50091a801b2dfd1b71747d946027a7efcaafc
Parents: 9f7091f
Author: Hitesh Khamesra <hkhamesra@pivotal.io>
Authored: Mon Aug 29 10:36:38 2016 -0700
Committer: Hitesh Khamesra <hkhamesra@pivotal.io>
Committed: Mon Aug 29 10:39:19 2016 -0700

----------------------------------------------------------------------
 .../distributed/ConfigurationProperties.java    |  6 +-
 .../membership/InternalDistributedMember.java   | 28 +++++++
 .../internal/membership/MemberFactory.java      |  1 -
 .../internal/membership/MemberServices.java     |  1 -
 .../internal/membership/gms/GMSMember.java      | 19 +----
 .../internal/membership/gms/Services.java       |  8 ++
 .../membership/gms/interfaces/JoinLeave.java    |  2 -
 .../membership/gms/interfaces/Messenger.java    | 28 ++++++-
 .../membership/gms/locator/GMSLocator.java      | 21 ++++--
 .../membership/gms/membership/GMSJoinLeave.java | 35 ++++-----
 .../membership/gms/messenger/GMSEncrypt.java    | 78 ++++++--------------
 .../gms/messenger/JGroupsMessenger.java         | 63 +++-------------
 .../messenger/JGroupsMessengerJUnitTest.java    |  6 +-
 .../sanctionedDataSerializables.txt             |  6 +-
 14 files changed, 144 insertions(+), 158 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/5cb50091/geode-core/src/main/java/com/gemstone/gemfire/distributed/ConfigurationProperties.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/distributed/ConfigurationProperties.java
b/geode-core/src/main/java/com/gemstone/gemfire/distributed/ConfigurationProperties.java
index aaad75e..e02f470 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/distributed/ConfigurationProperties.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/distributed/ConfigurationProperties.java
@@ -1203,7 +1203,11 @@ public interface ConfigurationProperties {
   String SECURITY_CLIENT_DHALGO = SECURITY_PREFIX + "client-dhalgo";
   /**
    * The static String definition of the <i>"security-udp-dhalgo"</i>
-   * property
+   * property. Application can set this property to valid symmetric key
+   * algorithm, to encrypt udp messages in Geode. Geode will generate 
+   * symmetric key using Diffie-Hellman key exchange algorithm between
+   * peers. That key further used by specified algorithm to encrypt the
+   * udp messages.
    */
   String SECURITY_UDP_DHALGO = SECURITY_PREFIX + "udp-dhalgo";
   /**

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/5cb50091/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/InternalDistributedMember.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/InternalDistributedMember.java
b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/InternalDistributedMember.java
index 54a0997..ead2c89 100755
--- a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/InternalDistributedMember.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/InternalDistributedMember.java
@@ -1293,4 +1293,32 @@ public class InternalDistributedMember
     
     return size;
   }
+  
+  public static class InternalDistributedMemberWrapper {
+    InternalDistributedMember mbr;
+    
+    public InternalDistributedMemberWrapper(InternalDistributedMember m) {
+      this.mbr = m;
+    }
+
+    public InternalDistributedMember getMbr() {
+      return mbr;
+    }
+
+    @Override
+    public int hashCode() {
+      return mbr.hashCode();
+    }
+
+    @Override
+    public boolean equals(Object obj) {
+      InternalDistributedMember other = ((InternalDistributedMemberWrapper)obj).mbr;
+      return mbr.compareTo(other, false, false) == 0;
+    }
+
+    @Override
+    public String toString() {
+      return "InternalDistrubtedMemberWrapper [mbr=" + mbr + "]";
+    }        
+  }
 }

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/5cb50091/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/MemberFactory.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/MemberFactory.java
b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/MemberFactory.java
index 1f4751b..f10731b 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/MemberFactory.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/MemberFactory.java
@@ -95,7 +95,6 @@ public class MemberFactory {
   /**
    * currently this is a test method but it ought to be used by InternalLocator
    * to create the peer location TcpHandler
-   * @param securityUDPDHAlgo TODO
    */
   static public NetLocator newLocatorHandler(InetAddress bindAddress,
           File stateFile,

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/5cb50091/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/MemberServices.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/MemberServices.java
b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/MemberServices.java
index 236ac43..235373f 100755
--- a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/MemberServices.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/MemberServices.java
@@ -81,7 +81,6 @@ public interface MemberServices {
   /**
    * currently this is a test method but it ought to be used by InternalLocator
    * to create the peer location TcpHandler
-   * @param securityUDPDHAlgo TODO
    */
   public abstract NetLocator newLocatorHandler(InetAddress bindAddress,
       File stateFile, String locatorString, boolean usePreferredCoordinators,

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/5cb50091/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/GMSMember.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/GMSMember.java
b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/GMSMember.java
index b7754ce..969933b 100755
--- a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/GMSMember.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/GMSMember.java
@@ -407,7 +407,7 @@ public class GMSMember implements NetMember, DataSerializableFixedID {
   
   @Override
   public void toData(DataOutput out) throws IOException {
-    writeShallowData(out);
+    writeEssentialData(out);
     out.writeInt(directPort);
     out.writeByte(memberWeight);
     out.writeByte(vmKind);
@@ -417,7 +417,7 @@ public class GMSMember implements NetMember, DataSerializableFixedID {
     DataSerializer.writeStringArray(groups, out);
 }
   
-  public void writeShallowData(DataOutput out) throws IOException {
+  public void writeEssentialData(DataOutput out) throws IOException {
     Version.writeOrdinal(out, this.versionOrdinal, true);
     
     int flags = 0;
@@ -435,7 +435,7 @@ public class GMSMember implements NetMember, DataSerializableFixedID {
 
   @Override
   public void fromData(DataInput in) throws IOException, ClassNotFoundException {
-    readShallowData(in);
+    readEssentialData(in);
     this.directPort = in.readInt();
     this.memberWeight = in.readByte();
     this.vmKind = in.readByte();
@@ -445,7 +445,7 @@ public class GMSMember implements NetMember, DataSerializableFixedID {
     this.groups = DataSerializer.readStringArray(in);
   } 
   
-  public void readShallowData(DataInput in) throws IOException, ClassNotFoundException {
+  public void readEssentialData(DataInput in) throws IOException, ClassNotFoundException
{
     this.versionOrdinal = Version.readOrdinal(in);
     
     int flags = in.readShort();
@@ -473,15 +473,4 @@ public class GMSMember implements NetMember, DataSerializableFixedID
{
     this.uuidLSBs = in.readLong();
     memberWeight = (byte)(in.readByte() & 0xFF);
   }
-  
-  public static void writeShallowNetMember(GMSMember mbr, DataOutput out) throws IOException
{
-    mbr.writeShallowData(out);
-  }
-  
-  public static GMSMember readShallowNetMember(DataInput in) throws ClassNotFoundException,
IOException {
-    GMSMember mbr = new GMSMember();
-    mbr.readShallowData(in);
-    
-    return mbr;
-  }
 }

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/5cb50091/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/Services.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/Services.java
b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/Services.java
index 5bc006f..9ff1636 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/Services.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/Services.java
@@ -29,6 +29,7 @@ import com.gemstone.gemfire.distributed.internal.membership.NetView;
 import com.gemstone.gemfire.distributed.internal.membership.gms.auth.GMSAuthenticator;
 import com.gemstone.gemfire.distributed.internal.membership.gms.fd.GMSHealthMonitor;
 import com.gemstone.gemfire.distributed.internal.membership.gms.interfaces.*;
+import com.gemstone.gemfire.distributed.internal.membership.gms.locator.GMSLocator;
 import com.gemstone.gemfire.distributed.internal.membership.gms.membership.GMSJoinLeave;
 import com.gemstone.gemfire.distributed.internal.membership.gms.messenger.JGroupsMessenger;
 import com.gemstone.gemfire.distributed.internal.membership.gms.mgr.GMSMembershipManager;
@@ -357,6 +358,13 @@ public class Services {
     return !getConfig().getDistributionConfig().getDisableAutoReconnect();
   }
 
+  public byte[] getPublicKey(InternalDistributedMember mbr) {
+    if(locator != null) {
+      return ((GMSLocator)locator).getPublicKey(mbr);
+    } 
+    return null;
+  }
+  
   public class Stopper extends CancelCriterion {
     volatile String reasonForStopping = null;
 

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/5cb50091/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/interfaces/JoinLeave.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/interfaces/JoinLeave.java
b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/interfaces/JoinLeave.java
index 3bacaf4..202a125 100755
--- a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/interfaces/JoinLeave.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/interfaces/JoinLeave.java
@@ -20,7 +20,6 @@ import com.gemstone.gemfire.distributed.DistributedMember;
 import com.gemstone.gemfire.distributed.internal.membership.InternalDistributedMember;
 import com.gemstone.gemfire.distributed.internal.membership.NetMember;
 import com.gemstone.gemfire.distributed.internal.membership.NetView;
-import com.gemstone.gemfire.distributed.internal.membership.gms.GMSMember;
 
 public interface JoinLeave extends Service {
 
@@ -53,7 +52,6 @@ public interface JoinLeave extends Service {
   
   /**
    * Get "InternalDistributedMember" from current view or prepared view.
-   * 
    */
   InternalDistributedMember getMemberID(NetMember m);
   

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/5cb50091/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/interfaces/Messenger.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/interfaces/Messenger.java
b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/interfaces/Messenger.java
index 3e9a2dc..18f1529 100755
--- a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/interfaces/Messenger.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/interfaces/Messenger.java
@@ -87,15 +87,41 @@ public interface Messenger extends Service {
    */
   void waitForMessageState(InternalDistributedMember member, Map state) throws InterruptedException;
   
-  byte[] getPublickey(InternalDistributedMember mbr);
+  /**
+   * Get the public key of member. 
+   * @param mbr
+   * @return
+   */
+  byte[] getPublicKey(InternalDistributedMember mbr);
+  
+  /**
+   * Set public key of member.
+   * @param publickey
+   * @param mbr
+   */
   
   void setPublicKey(byte[] publickey, InternalDistributedMember mbr);
   
+  /**
+   * Set cluster key in local member.Memebr calls when it gets cluster key in join response
+   * @param clusterSecretKey
+   */
   void setClusterSecretKey(byte[] clusterSecretKey);
   
+  /** 
+   * To retrieve the cluster key. This needs to send cluster key to new memebr.
+   * @return
+   */
   byte[] getClusterSecretKey();
   
+  /**
+   * To set requestId in request. This requestId comes back in response to match the request.
+   * @return
+   */
   int getRequestId();
   
+  /**
+   * Initialize the cluster key, this happens when member becomes coordinator.
+   */
   void initClusterKey();
 }

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/5cb50091/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/locator/GMSLocator.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/locator/GMSLocator.java
b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/locator/GMSLocator.java
index 44e5ce8..69a1f60 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/locator/GMSLocator.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/locator/GMSLocator.java
@@ -30,7 +30,9 @@ import java.util.Collection;
 import java.util.Collections;
 import java.util.HashSet;
 import java.util.List;
+import java.util.Map;
 import java.util.Set;
+import java.util.concurrent.ConcurrentHashMap;
 
 import com.gemstone.gemfire.InternalGemFireException;
 
@@ -45,11 +47,11 @@ import com.gemstone.gemfire.distributed.internal.SharedConfiguration;
 import com.gemstone.gemfire.distributed.internal.membership.InternalDistributedMember;
 import com.gemstone.gemfire.distributed.internal.membership.MembershipManager;
 import com.gemstone.gemfire.distributed.internal.membership.NetView;
+import com.gemstone.gemfire.distributed.internal.membership.InternalDistributedMember.InternalDistributedMemberWrapper;
 import com.gemstone.gemfire.distributed.internal.membership.gms.GMSUtil;
 import com.gemstone.gemfire.distributed.internal.membership.gms.NetLocator;
 import com.gemstone.gemfire.distributed.internal.membership.gms.Services;
 import com.gemstone.gemfire.distributed.internal.membership.gms.interfaces.Locator;
-import com.gemstone.gemfire.distributed.internal.membership.gms.messenger.GMSEncrypt;
 import com.gemstone.gemfire.distributed.internal.membership.gms.mgr.GMSMembershipManager;
 import com.gemstone.gemfire.distributed.internal.tcpserver.TcpClient;
 import com.gemstone.gemfire.distributed.internal.tcpserver.TcpServer;
@@ -75,6 +77,7 @@ public class GMSLocator implements Locator, NetLocator {
   private InternalDistributedMember localAddress;
   
   private final Set<InternalDistributedMember> registrants = new HashSet<>();
+  public Map<InternalDistributedMemberWrapper, byte[]> registerMbrVsPK = new ConcurrentHashMap<>();
 
   /**
    * The current membership view, or one recovered from disk.
@@ -91,7 +94,7 @@ public class GMSLocator implements Locator, NetLocator {
    * @param usePreferredCoordinators    true if the membership coordinator should be a Locator
    * @param networkPartitionDetectionEnabled true if network partition detection is enabled
    * @param stats the locator statistics object
-   * @param securityUDPDHAlgo TODO
+   * @param securityUDPDHAlgo DF algorithm 
    */
   public GMSLocator(  InetAddress bindAddress,
                       File stateFile,
@@ -185,7 +188,8 @@ public class GMSLocator implements Locator, NetLocator {
       if(services != null) {
         services.getMessenger().setPublicKey(findRequest.getMyPublicKey(), findRequest.getMemberID());
       } else {
-        GMSEncrypt.registerMember(findRequest.getMyPublicKey(), findRequest.getMemberID());
+        //GMSEncrypt.registerMember(findRequest.getMyPublicKey(), findRequest.getMemberID());
+        registerMbrVsPK.put(new InternalDistributedMemberWrapper(findRequest.getMemberID()),
findRequest.getMyPublicKey());
       }
       if (findRequest.getMemberID() != null) {
         InternalDistributedMember coord = null;
@@ -252,9 +256,10 @@ public class GMSLocator implements Locator, NetLocator {
           }
           if (coordPk == null) {
             if(services != null){
-              coordPk = services.getMessenger().getPublickey(coord);
+              coordPk = services.getMessenger().getPublicKey(coord);
             } else {
-              coordPk = GMSEncrypt.getRegisteredPublicKey(coord);
+              //coordPk = GMSEncrypt.getRegisteredPublicKey(coord);
+              coordPk = registerMbrVsPK.get(new InternalDistributedMemberWrapper(coord));
             }
           }
           response = new FindCoordinatorResponse(coord, localAddress,
@@ -308,10 +313,14 @@ public class GMSLocator implements Locator, NetLocator {
     stats.endLocatorResponse(startTime);
   }
 
+  public byte[] getPublicKey(InternalDistributedMember mbr) {
+    return registerMbrVsPK.get(new InternalDistributedMemberWrapper(mbr));
+  }
+  
   @Override
   public void shutDown() {
     // nothing to do for GMSLocator
-    GMSEncrypt.clear();
+    registerMbrVsPK.clear();
   }
   
   

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/5cb50091/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSJoinLeave.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSJoinLeave.java
b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSJoinLeave.java
index 5f4a6e6..1c6cf16 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSJoinLeave.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSJoinLeave.java
@@ -847,7 +847,7 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
     pendingRemovals.removeAll(view.getCrashedMembers());
     viewReplyProcessor.initialize(id, responders);
     viewReplyProcessor.processPendingRequests(pendingLeaves, pendingRemovals);
-    addPublickeysToView(view);
+    addPublicKeysToView(view);
     services.getMessenger().send(msg);
 
     // only wait for responses during preparation
@@ -875,8 +875,7 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
     return true;
   }
 
-  private void addPublickeysToView(NetView view) {
-    //TODO: is this check is correct
+  private void addPublicKeysToView(NetView view) {
     String sDHAlgo = services.getConfig().getDistributionConfig().getSecurityUDPDHAlgo();
     if (sDHAlgo != null && !sDHAlgo.isEmpty()) {
       List<InternalDistributedMember> mbrs = view.getMembers();
@@ -884,7 +883,7 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
 
       while (itr.hasNext()) {
         InternalDistributedMember mbr = itr.next();
-        byte[] pk = services.getMessenger().getPublickey(mbr);
+        byte[] pk = services.getMessenger().getPublicKey(mbr);
         view.setPublicKey(mbr, pk);
       }
     }
@@ -893,7 +892,10 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
 
     NetView view = m.getView();
     
+    //If our current view doesn't contaion sender then we wanrt to ignore that view.
     if(currentView != null && !currentView.contains(m.getSender())) {
+      //but if preparedView contains sender then we don't want to ignore that view.
+      //this may happen when we locator re-join and it take over coordinator's responsibility.
       if(this.preparedView == null || !this.preparedView.contains(m.getSender())) 
       { 
         logger.info("Ignoring the view {} from member {}, which is not in my current view
{} ", view, m.getSender(), currentView);
@@ -994,7 +996,7 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
 
     String dhalgo = services.getConfig().getDistributionConfig().getSecurityUDPDHAlgo();
     FindCoordinatorRequest request = new FindCoordinatorRequest(this.localAddress, state.alreadyTried,
state.viewId, 
-        services.getMessenger().getPublickey(localAddress), services.getMessenger().getRequestId(),
dhalgo);
+        services.getMessenger().getPublicKey(localAddress), services.getMessenger().getRequestId(),
dhalgo);
     Set<InternalDistributedMember> possibleCoordinators = new HashSet<InternalDistributedMember>();
     Set<InternalDistributedMember> coordinatorsWithView = new HashSet<InternalDistributedMember>();
 
@@ -1128,17 +1130,19 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
       
       String dhalgo = services.getConfig().getDistributionConfig().getSecurityUDPDHAlgo();

       if (!dhalgo.isEmpty()) {
+        //Here we are sending message one-by-one to all recipients as we don't have cluster
secret key yet.
+        //Usually this happens when locator re-joins the cluster and it has saved view.
         for (InternalDistributedMember mbr : v.getMembers()) {
           Set<InternalDistributedMember> r = new HashSet<>();
           r.add(mbr);
-          FindCoordinatorRequest req = new FindCoordinatorRequest(localAddress, state.alreadyTried,
state.viewId, services.getMessenger().getPublickey(
+          FindCoordinatorRequest req = new FindCoordinatorRequest(localAddress, state.alreadyTried,
state.viewId, services.getMessenger().getPublicKey(
               localAddress), services.getMessenger().getRequestId(), dhalgo);
           req.setRecipients(r);
 
           services.getMessenger().send(req, v);
         }
       } else {
-        FindCoordinatorRequest req = new FindCoordinatorRequest(localAddress, state.alreadyTried,
state.viewId, services.getMessenger().getPublickey(
+        FindCoordinatorRequest req = new FindCoordinatorRequest(localAddress, state.alreadyTried,
state.viewId, services.getMessenger().getPublicKey(
             localAddress), services.getMessenger().getRequestId(), dhalgo);
         req.setRecipients(v.getMembers());
 
@@ -1229,10 +1233,10 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
     if (this.isJoined) {
       NetView v = currentView;
       resp = new FindCoordinatorResponse(v.getCoordinator(), localAddress, 
-          services.getMessenger().getPublickey(v.getCoordinator()), req.getRequestId());
+          services.getMessenger().getPublicKey(v.getCoordinator()), req.getRequestId());
     } else {
       resp = new FindCoordinatorResponse(localAddress, localAddress, 
-          services.getMessenger().getPublickey(localAddress), req.getRequestId());
+          services.getMessenger().getPublicKey(localAddress), req.getRequestId());
     }
     resp.setRecipient(req.getMemberID());
     services.getMessenger().send(resp);
@@ -2074,13 +2078,11 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
         viewRequests.clear();
       }
 
-      
+      NetView v = currentView;
       for (DistributionMessage msg : requests) {
         switch (msg.getDSFID()) {
-        case JOIN_REQUEST:
-      
-          NetView v = currentView;
-          logger.info("Informing to pending join requests {} myid {} coord {}", msg, localAddress,
v.getCoordinator());
+        case JOIN_REQUEST:               
+          logger.debug("Informing to pending join requests {} myid {} coord {}", msg, localAddress,
v.getCoordinator());
           if (!v.getCoordinator().equals(localAddress)) {
             joinResponseSent = true;
             //lets inform that coordinator has been changed
@@ -2226,9 +2228,6 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
         return;
       }
 
-      //we already sent whrn we got join request
-      //sendJoinResponses(newView, joinReqs);
-
       // send removal messages before installing the view so we stop
       // getting messages from members that have been kicked out
       sendRemoveMessages(removalReqs, removalReasons, oldIDs);
@@ -2355,8 +2354,6 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
 
       // we also send a join response so that information like the multicast message digest
       // can be transmitted to the new members w/o including it in the view message
-      //we already sent whrn we got join request
-      //sendJoinResponses(newView, joinReqs);
 
       if (markViewCreatorForShutdown && getViewCreator() != null) {
         shutdown = true;

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/5cb50091/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/GMSEncrypt.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/GMSEncrypt.java
b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/GMSEncrypt.java
index ba049d2..6c41465 100755
--- a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/GMSEncrypt.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/GMSEncrypt.java
@@ -20,7 +20,6 @@ import java.math.BigInteger;
 import java.security.*;
 import java.security.spec.PKCS8EncodedKeySpec;
 import java.security.spec.X509EncodedKeySpec;
-import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
@@ -34,13 +33,13 @@ import javax.crypto.spec.IvParameterSpec;
 import javax.crypto.spec.SecretKeySpec;
 
 import com.gemstone.gemfire.distributed.internal.membership.InternalDistributedMember;
+import com.gemstone.gemfire.distributed.internal.membership.InternalDistributedMember.InternalDistributedMemberWrapper;
 import com.gemstone.gemfire.distributed.internal.membership.NetView;
 import com.gemstone.gemfire.distributed.internal.membership.gms.Services;
 import com.gemstone.gemfire.distributed.internal.DistributionConfig;
 
 public class GMSEncrypt implements Cloneable {
-
-  public static Map<GMSEncrypt.InternalDistributedMemberWrapper, byte[]> registrants
= new ConcurrentHashMap<>();
+  
   public static long encodingsPerformed;
   public static long decodingsPerformed;
 
@@ -73,11 +72,20 @@ public class GMSEncrypt implements Cloneable {
 
   private NetView view;
 
-  private int numberOfPeerEncryptorCopies = 10;
+  public static final int numberOfPeerEncryptorCopies = Integer.getInteger("GMSEncrypt.MAX_ENCRYPTORS",
Math.max(Runtime.getRuntime().availableProcessors()*4, 16)).intValue();
+  /**
+   * Keeps multiple copies for peer
+   */
   private ConcurrentHashMap<InternalDistributedMember, PeerEncryptor>[] copyOfPeerEncryptors;
-  private ClusterEncryptor[] clusterEncryptors;
+  /**
+   * Keeps multiple copies of cluster keys
+   */
+  private ClusterEncryptor[] copyOfClusterEncryptors;
   
-  private Map<GMSEncrypt.InternalDistributedMemberWrapper, byte[]> memberToPeerEncryptor
= new ConcurrentHashMap<>();
+  /**
+   * it keeps PK for peers
+   */
+  private Map<InternalDistributedMemberWrapper, byte[]> memberToPeerEncryptor = new
ConcurrentHashMap<>();
 
   private ClusterEncryptor clusterEncryptor;
 
@@ -102,7 +110,6 @@ public class GMSEncrypt implements Cloneable {
   }
 
   protected synchronized void addClusterKey(byte[] secretBytes) {
-    //TODO we are reseeting here, in case there is some race
     this.clusterEncryptor = new ClusterEncryptor(secretBytes);
   }
   
@@ -110,19 +117,8 @@ public class GMSEncrypt implements Cloneable {
     initEncryptors();
   }
 
-  public static void registerMember(byte[] pk, InternalDistributedMember mbr) {
-    if (pk != null) {
-      registrants.put(new GMSEncrypt.InternalDistributedMemberWrapper(mbr), pk);
-    }
-  }
-  
-  public static void clear() {
-    registrants.clear();
-  }
-  
-  public static byte[] getRegisteredPublicKey(InternalDistributedMember mbr) {
-    InternalDistributedMemberWrapper m = new InternalDistributedMemberWrapper(mbr);
-    return registrants.get(m);
+  private  byte[] getRegisteredPublicKey(InternalDistributedMember mbr) {
+    return services.getPublicKey(mbr);
   }
   
   public GMSEncrypt(Services services) throws Exception {
@@ -140,7 +136,7 @@ public class GMSEncrypt implements Cloneable {
   
   void initEncryptors() {
     copyOfPeerEncryptors = new  ConcurrentHashMap[numberOfPeerEncryptorCopies];
-    clusterEncryptors = new ClusterEncryptor[numberOfPeerEncryptorCopies];
+    copyOfClusterEncryptors = new ClusterEncryptor[numberOfPeerEncryptorCopies];
   }
 
   public byte[] decryptData(byte[] data, InternalDistributedMember member) throws Exception
{
@@ -203,6 +199,7 @@ public class GMSEncrypt implements Cloneable {
       GMSEncrypt gmsEncrypt = new GMSEncrypt();
       gmsEncrypt.localMember = this.localMember;
       gmsEncrypt.dhSKAlgo = this.dhSKAlgo;
+      gmsEncrypt.services = this.services;
 
       X509EncodedKeySpec x509KeySpec = new X509EncodedKeySpec(this.dhPublicKey.getEncoded());
       KeyFactory keyFact = KeyFactory.getInstance("DH");
@@ -241,35 +238,7 @@ public class GMSEncrypt implements Cloneable {
       dhPrivateKey = keypair.getPrivate();
       dhPublicKey = keypair.getPublic();
     }
-  }
-
-  static class InternalDistributedMemberWrapper {
-    InternalDistributedMember mbr;
-    
-    public InternalDistributedMemberWrapper(InternalDistributedMember m) {
-      this.mbr = m;
-    }
-
-    public InternalDistributedMember getMbr() {
-      return mbr;
-    }
-
-    @Override
-    public int hashCode() {
-      return mbr.hashCode();
-    }
-
-    @Override
-    public boolean equals(Object obj) {
-      InternalDistributedMember other = ((InternalDistributedMemberWrapper)obj).mbr;
-      return mbr.compareTo(other, false, false) == 0;
-    }
-
-    @Override
-    public String toString() {
-      return "InternalDistrubtedMemberWrapper [mbr=" + mbr + "]";
-    }        
-  }
+  }  
   
   protected PeerEncryptor getPeerEncryptor(InternalDistributedMember member) throws Exception
{
     Map<InternalDistributedMember, PeerEncryptor> m = getPeerEncryptorMap();
@@ -309,14 +278,14 @@ public class GMSEncrypt implements Cloneable {
   
   private ClusterEncryptor getClusterEncryptor() {
     int h = Math.abs(Thread.currentThread().getName().hashCode() % numberOfPeerEncryptorCopies);
-    ClusterEncryptor c = clusterEncryptors[h];
+    ClusterEncryptor c = copyOfClusterEncryptors[h];
     
     if(c == null) {
-      synchronized (copyOfPeerEncryptors) {
-        c = clusterEncryptors[h];
+      synchronized (copyOfClusterEncryptors) {
+        c = copyOfClusterEncryptors[h];
         if(c == null) {
           c = new ClusterEncryptor(getClusterSecretKey());
-          clusterEncryptors[h] = c;          
+          copyOfClusterEncryptors[h] = c;          
         }
       }
     }
@@ -592,7 +561,6 @@ public class GMSEncrypt implements Cloneable {
    */
   protected class ClusterEncryptor{
     byte[] secretBytes;
-    //TODO: need to look this is thread safe
     Cipher encrypt;
     Cipher decrypt;
 

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/5cb50091/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/JGroupsMessenger.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/JGroupsMessenger.java
b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/JGroupsMessenger.java
index f43c98d..ca23639 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/JGroupsMessenger.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/JGroupsMessenger.java
@@ -16,7 +16,6 @@
  */
 package com.gemstone.gemfire.distributed.internal.membership.gms.messenger;
 
-import com.gemstone.gemfire.*;
 import static com.gemstone.gemfire.distributed.internal.membership.gms.GMSUtil.replaceStrings;
 import static com.gemstone.gemfire.internal.DataSerializableFixedID.JOIN_REQUEST;
 import static com.gemstone.gemfire.internal.DataSerializableFixedID.JOIN_RESPONSE;
@@ -26,7 +25,6 @@ import static com.gemstone.gemfire.internal.DataSerializableFixedID.FIND_COORDIN
 import java.io.BufferedReader;
 import java.io.ByteArrayInputStream;
 import java.io.DataInputStream;
-import java.io.DataOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.InputStreamReader;
@@ -39,15 +37,15 @@ import java.util.Arrays;
 import java.util.Collections;
 import java.util.HashMap;
 import java.util.HashSet;
-import java.util.Iterator;
 import java.util.LinkedList;
 import java.util.List;
 import java.util.Map;
 import java.util.Random;
 import java.util.Set;
-import java.util.WeakHashMap;
 import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.atomic.AtomicInteger;
 import java.util.concurrent.atomic.AtomicLong;
+import java.util.stream.Collectors;
 
 import org.apache.logging.log4j.Logger;
 import org.jgroups.Address;
@@ -103,30 +101,6 @@ import com.gemstone.gemfire.internal.tcp.MemberShunnedException;
 
 import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap;
 
-import org.apache.logging.log4j.Logger;
-import org.jgroups.*;
-import org.jgroups.Message.Flag;
-import org.jgroups.Message.TransientFlag;
-import org.jgroups.conf.ClassConfigurator;
-import org.jgroups.protocols.UDP;
-import org.jgroups.protocols.pbcast.NAKACK2;
-import org.jgroups.stack.IpAddress;
-import org.jgroups.util.Digest;
-import org.jgroups.util.UUID;
-
-import java.io.*;
-import java.lang.reflect.Field;
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-import java.net.UnknownHostException;
-import java.util.*;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.concurrent.atomic.AtomicLong;
-import java.util.stream.*;
-
-import static com.gemstone.gemfire.distributed.internal.membership.gms.GMSUtil.replaceStrings;
-import static com.gemstone.gemfire.internal.DataSerializableFixedID.JOIN_REQUEST;
-import static com.gemstone.gemfire.internal.DataSerializableFixedID.JOIN_RESPONSE;
 
 @SuppressWarnings("StatementWithEmptyBody")
 public class JGroupsMessenger implements Messenger {
@@ -747,8 +721,7 @@ public class JGroupsMessenger implements Messenger {
       Int2ObjectOpenHashMap<Message> messages = new Int2ObjectOpenHashMap<>();
       long startSer = theStats.startMsgSerialization();
       boolean firstMessage = true;
-      for (Iterator<GMSMember> it=calculatedMembers.iterator(); it.hasNext(); ) {
-        GMSMember mbr = it.next();
+      for (GMSMember mbr : calculatedMembers ) {
         short version = mbr.getVersionOrdinal();
         if ( !messages.containsKey(version) ) {
           Message jmsg = createJGMessage(msg, local, version);
@@ -765,7 +738,7 @@ public class JGroupsMessenger implements Messenger {
       for (GMSMember mbr: calculatedMembers) {
         JGAddress to = new JGAddress(mbr);
         short version = mbr.getVersionOrdinal();
-        Message jmsg = (Message)messages.get(version);
+        Message jmsg = messages.get(version);
         Exception problem = null;
         try {
           Message tmp = (i < (calculatedLen-1)) ? jmsg.copy(true) : jmsg;
@@ -841,7 +814,6 @@ public class JGroupsMessenger implements Messenger {
     setMessageFlags(gfmsg, msg);
     try {
       long start = services.getStatistics().startMsgSerialization();
-      byte[] messageBytes = null;
       HeapDataOutputStream out_stream = new HeapDataOutputStream(Version.fromOrdinalOrCurrent(version));
       Version.CURRENT.writeOrdinal(out_stream, true);
       if(encrypt != null) {
@@ -940,9 +912,8 @@ public class JGroupsMessenger implements Messenger {
   }
   
   byte[] serializeMessage(DistributionMessage gfmsg, HeapDataOutputStream out_stream) throws
IOException {
-    
-    //DataSerializer.writeObject(this.localAddress.getShallowNetMember(), out_stream);
-    GMSMember.writeShallowNetMember((GMSMember)this.localAddress.getNetMember(), out_stream);
+    GMSMember m = (GMSMember)this.localAddress.getNetMember();
+    m.writeEssentialData(out_stream);
     DataSerializer.writeObject(gfmsg, out_stream);
     
     return out_stream.toByteArray();
@@ -1054,8 +1025,6 @@ public class JGroupsMessenger implements Messenger {
     int requestId = dis.readInt();
     long start = services.getStatistics().startUDPMsgDecryption();
     try {
-      // TODO seems like we don't need this, just set bit that PK is appended
-
       logger.debug("readEncryptedMessage Reading Request id " + dfsid + " and requestid is
" + requestId + " myid " + this.localAddress);
       InternalDistributedMember pkMbr = null;
       boolean readPK = false;
@@ -1104,13 +1073,6 @@ public class JGroupsMessenger implements Messenger {
         DistributionMessage result = deserializeMessage(in, ordinal);
         
         if (pk != null) {
-          
-          /*InternalDistributedMember mbr = null;
-          if (result instanceof JoinRequestMessage) {
-            mbr = ((JoinRequestMessage)result).getMemberID();
-          } else {
-            mbr = ((FindCoordinatorRequest)result).getMemberID();
-          }*/
           logger.info("Setting public key for " + result.getSender() +  " len " + pk.length);
           setPublicKey(pk, result.getSender());
         }
@@ -1126,8 +1088,8 @@ public class JGroupsMessenger implements Messenger {
   }
   
   DistributionMessage deserializeMessage(DataInputStream in, short ordinal) throws ClassNotFoundException,
IOException {
-    GMSMember m = GMSMember.readShallowNetMember(in);
-
+    GMSMember m = new GMSMember();
+    m.readEssentialData(in);
     DistributionMessage result = (DistributionMessage) DataSerializer.readObject(in);
 
     setSender(result, m, ordinal);
@@ -1352,7 +1314,7 @@ public class JGroupsMessenger implements Messenger {
   }
 
   @Override
-  public byte[] getPublickey(InternalDistributedMember mbr) {
+  public byte[] getPublicKey(InternalDistributedMember mbr) {
     if (encrypt != null) {
       return encrypt.getPublicKey(mbr);
     }
@@ -1362,7 +1324,7 @@ public class JGroupsMessenger implements Messenger {
   @Override
   public void setPublicKey(byte[] publickey, InternalDistributedMember mbr) {
     if (encrypt != null) {
-      logger.debug("Setting pK for member " + mbr);
+      logger.debug("Setting PK for member " + mbr);
       encrypt.setPublicKey(publickey, mbr);
     }
   }
@@ -1383,11 +1345,10 @@ public class JGroupsMessenger implements Messenger {
     return null;
   }
 
-  private Random randomId = new Random();
+  private AtomicInteger requestId = new AtomicInteger((new Random().nextInt()));
   private HashMap<Integer, InternalDistributedMember> requestIdVsRecipients = new HashMap<>();
   
   InternalDistributedMember getRequestedMember(int requestId) {
-    //TODO: what if we don't get response, need to remove this otherwise it will be leak
     return requestIdVsRecipients.remove(requestId);
   }
   
@@ -1397,7 +1358,7 @@ public class JGroupsMessenger implements Messenger {
   
   @Override
   public int getRequestId() {
-    return randomId.nextInt();
+    return requestId.incrementAndGet();
   }
 
   @Override

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/5cb50091/geode-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/JGroupsMessengerJUnitTest.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/JGroupsMessengerJUnitTest.java
b/geode-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/JGroupsMessengerJUnitTest.java
index 00c9e32..ac19010 100755
--- a/geode-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/JGroupsMessengerJUnitTest.java
+++ b/geode-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/messenger/JGroupsMessengerJUnitTest.java
@@ -936,7 +936,7 @@ public class JGroupsMessengerJUnitTest {
     messenger.setPublicKey(otherMbrEncrptor.getPublicKeyBytes(), otherMbr);
     messenger.initClusterKey();
     
-    FindCoordinatorRequest gfmsg = new FindCoordinatorRequest(messenger.getMemberID(), new
ArrayList<InternalDistributedMember>(2), 1, messenger.getPublickey(messenger.getMemberID()),
1, "");
+    FindCoordinatorRequest gfmsg = new FindCoordinatorRequest(messenger.getMemberID(), new
ArrayList<InternalDistributedMember>(2), 1, messenger.getPublicKey(messenger.getMemberID()),
1, "");
     Set<InternalDistributedMember> recipients = new HashSet<>();
     recipients.add(otherMbr);
     gfmsg.setRecipients(recipients);
@@ -967,7 +967,7 @@ public class JGroupsMessengerJUnitTest {
     NetView v = createView(otherMbr);
     
     GMSEncrypt otherMbrEncrptor = new GMSEncrypt(services);
-    otherMbrEncrptor.setPublicKey(messenger.getPublickey(messenger.getMemberID()), messenger.getMemberID());
+    otherMbrEncrptor.setPublicKey(messenger.getPublicKey(messenger.getMemberID()), messenger.getMemberID());
     
     messenger.setPublicKey(otherMbrEncrptor.getPublicKeyBytes(), otherMbr);
     messenger.initClusterKey();
@@ -1037,7 +1037,7 @@ public class JGroupsMessengerJUnitTest {
     NetView v = createView(otherMbr);
     
     GMSEncrypt otherMbrEncrptor = new GMSEncrypt(services);
-    otherMbrEncrptor.setPublicKey(messenger.getPublickey(messenger.getMemberID()), messenger.getMemberID());
+    otherMbrEncrptor.setPublicKey(messenger.getPublicKey(messenger.getMemberID()), messenger.getMemberID());
     
     messenger.setPublicKey(otherMbrEncrptor.getPublicKeyBytes(), otherMbr);
     messenger.initClusterKey();

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/5cb50091/geode-core/src/test/resources/com/gemstone/gemfire/codeAnalysis/sanctionedDataSerializables.txt
----------------------------------------------------------------------
diff --git a/geode-core/src/test/resources/com/gemstone/gemfire/codeAnalysis/sanctionedDataSerializables.txt
b/geode-core/src/test/resources/com/gemstone/gemfire/codeAnalysis/sanctionedDataSerializables.txt
index 9fc642d..059477c 100644
--- a/geode-core/src/test/resources/com/gemstone/gemfire/codeAnalysis/sanctionedDataSerializables.txt
+++ b/geode-core/src/test/resources/com/gemstone/gemfire/codeAnalysis/sanctionedDataSerializables.txt
@@ -290,7 +290,7 @@ fromDataPre_GFE_7_1_0_0,292,2bb8009d4d2bb9009e01003e2a2bb8008ab500062ab200039900
 fromDataPre_GFE_9_0_0_0,296,2bb8009d4d2bb9009e01003e2a2bb8008ab500062ab2000399000e2c2ab40006b8009fa700072cb60007b500062bb900a0010036041504047e99000704a700040336051504057e99000704a700040336062a1504077e99000704a7000403b5003a2a2bb9009e0100b500112a2bb9009e0100b500022a2bb900a00100b500132a2bb8008cb500202a2bb8008ab500182ab40013100da0000e2a2bb8008ab50019a700172bb8008a3a071907c6000c2a1907b800a1b500142bb8008a3a072bb8008db6008e36082abb008f5919071508b70090b5001e2a15042bb70091bb0034592ab400112ab400022ab400132ab400142ab400182ab400202ab4001eb700353a092a2c1d150515062ab4001b1909b80028b500292ab7000b2ab400139e000704a7000403b80043b1
 toData,29,2a2bb600962ab4001bb20092b60072a1000d2ab600972bb900860200b1
 toDataPre_GFE_7_1_0_0,226,2ab400139e000704a7000403b800432ab600502bb800982b2ab6004fb9009902002ab400062bb8007d033d2ab40029b9007e01009900071c04803d2ab40029b9006d01009900071c05803d2ab4003a9900071c07803d2b1c1100ff7e91b9009a02002b2ab40011b9009902002b2ab40002b9009902002b2ab40013b9009a02002ab400202bb800802ab400182bb8007d2ab40013100da0000e2ab400192bb8007da7000e2ab40014b8009b2bb8007d2ab4001ec700081247a7000a2ab4001eb600812bb8007d2ab4001ec7000911012ca7000a2ab4001eb60082b800832bb80084b1
-toDataPre_GFE_9_0_0_0,240,2ab400139e000704a7000403b800432ab600502bb800982b2ab6004fb9009902002ab400062bb8007d033d2ab40029b9007e01009900071c04803d2ab40029b9006d01009900071c05803d2ab4003a9900071c07803d1c1008803d2b1c1100ff7e91b9009a02002b2ab40011b9009902002b2ab40002b9009902002b2ab40013b9009a02002ab400202bb800802ab400182bb8007d2ab40013100da0000e2ab400192bb8007da7000e2ab40014b8009b2bb8007d2ab4001ec700081247a7000a2ab4001eb600812bb8007d2ab4001ec7000911012ca7000a2ab4001eb60082b800832bb800842b2ab4001b04b80085b1
+toDataPre_GFE_9_0_0_0,225,2ab600502bb800982b2ab6004fb9009902002ab400062bb8007d033d2ab40029b9007e01009900071c04803d2ab40029b9006d01009900071c05803d2ab4003a9900071c07803d1c1008803d2b1c1100ff7e91b9009a02002b2ab40011b9009902002b2ab40002b9009902002b2ab40013b9009a02002ab400202bb800802ab400182bb8007d2ab40013100da0000e2ab400192bb8007da7000e2ab40014b8009b2bb8007d2ab4001ec700081247a7000a2ab4001eb600812bb8007d2ab4001ec7000911012ca7000a2ab4001eb60082b800832bb800842b2ab4001b04b80085b1
 
 com/gemstone/gemfire/distributed/internal/membership/NetView,2
 fromData,98,2a2bb8006ec0002bb500112a2bb9006f0100b500062a2bb80070b50009b200409a00122ab40009c7000bbb004159b70042bf2abb000a592ab40009b7000bb5000c2a2bb80071b5000e2a2bb80071b500102a2bb80072b500052a2bb80073b50004b1
@@ -989,8 +989,8 @@ fromData,17,2a2bb80005b500022a2bb80005b50003b1
 toData,17,2ab400022bb800042ab400032bb80004b1
 
 com/gemstone/gemfire/internal/cache/EntryEventImpl,2
-fromData,216,2a2bb80013c00014b500152bb800134d2bb800134e2abb0016592c2d01b70017b500182a2bb900190100b8001ab5001b2a2bb9001c0100b500082ab400182bb80013b6001d2a2bb80013c0001eb500092bb9001f0100990013b200209a003cbb0021591222b70023bf2bb9001f01009900212a2bb80024b500252a2ab40025b500062a2ab40025b80026b50005a7000b2a2bb80013b500052bb9001f01009900192a2bb80024b500272a2ab40027b80026b50007a7000b2a2bb80013b500072a2bb80028b500292a2bb8002ab5000a2a2bb8002bb50011b1
-toData,279,2ab400152bb801452ab600882bb801452ab40018b601722bb801452b2ab4001bb40173b9017402002b2ab4000811c03f7eb9017502002ab600462bb801452ab400092bb801452b03b9017602002ab6003c4d2cc1007d3e1d99000d2cc0007db900a801003e2b1db9017602001d99003b2ab40025c6000e2ab400252bb80177a7002e2ab40006c6000e2ab400062bb80177a7001c2cc0007d3a041904b900b601002bb80178a700082c2bb801452ab7003e4d2cc1007d3e1d99000d2cc0007db900a801003e2b1db9017602001d9900292ab40027c6000e2ab400272bb80177a7001c2cc0007d3a041904b900b601002bb80178a700082c2bb801452ab40029c001792bb8017a2ab600542bb801452ab400112bb8017bb1
+fromData,216,2a2bb80016c00017b500182bb800164d2bb800164e2abb0019592c2d01b7001ab5001b2a2bb9001c0100b8001db5001e2a2bb9001f0100b500082ab4001b2bb80016b600202a2bb80016c00021b500092bb900220100990013b200239a003cbb0024591225b70026bf2bb9002201009900212a2bb80027b500282a2ab40028b500062a2ab40028b80029b50005a7000b2a2bb80016b500052bb9002201009900192a2bb80027b5002a2a2ab4002ab80029b50007a7000b2a2bb80016b500072a2bb8002bb5002c2a2bb8002db5000a2a2bb8002eb50013b1
+toData,279,2ab400182bb801482ab600892bb801482ab4001bb601752bb801482b2ab4001eb40176b9017702002b2ab4000811c03f7eb9017802002ab600492bb801482ab400092bb801482b03b9017902002ab6003f4d2cc100803e1d99000d2cc00080b900a901003e2b1db9017902001d99003b2ab40028c6000e2ab400282bb8017aa7002e2ab40006c6000e2ab400062bb8017aa7001c2cc000803a041904b900b701002bb8017ba700082c2bb801482ab700414d2cc100803e1d99000d2cc00080b900a901003e2b1db9017902001d9900292ab4002ac6000e2ab4002a2bb8017aa7001c2cc000803a041904b900b701002bb8017ba700082c2bb801482ab4002cc0017c2bb8017d2ab600572bb801482ab400132bb8017eb1
 
 com/gemstone/gemfire/internal/cache/EntrySnapshot,2
 fromData,50,2a03b500052bb9004101003d1c9900112abb000759b70042b50004a7000e2abb000359b70043b500042ab400042bb60044b1


Mime
View raw message