You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by jj...@apache.org on 2020/04/20 13:36:04 UTC

[geode] branch revert-4824-feature/GEODE-7565_2 created (now c81d55e)

This is an automated email from the ASF dual-hosted git repository.

jjramos pushed a change to branch revert-4824-feature/GEODE-7565_2
in repository https://gitbox.apache.org/repos/asf/geode.git.


      at c81d55e  Revert "GEODE-7565: Allow gateway receivers with same host and port (#4824)"

This branch includes the following new commits:

     new c81d55e  Revert "GEODE-7565: Allow gateway receivers with same host and port (#4824)"

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



[geode] 01/01: Revert "GEODE-7565: Allow gateway receivers with same host and port (#4824)"

Posted by jj...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

jjramos pushed a commit to branch revert-4824-feature/GEODE-7565_2
in repository https://gitbox.apache.org/repos/asf/geode.git

commit c81d55ec14b3fac282db00f51c51054c0f278652
Author: Juan José Ramos <ju...@users.noreply.github.com>
AuthorDate: Mon Apr 20 14:35:40 2020 +0100

    Revert "GEODE-7565: Allow gateway receivers with same host and port (#4824)"
    
    This reverts commit dd23ee8200cba67cea82e57e2e4ccedcdf9e8266.
---
 .../LocatorLoadSnapshotIntegrationTest.java        |   7 +-
 .../codeAnalysis/sanctionedDataSerializables.txt   |   4 -
 .../client/internal/CacheServerLoadMessage.java    |   4 +-
 .../cache/client/internal/LiveServerPinger.java    |   2 +-
 .../apache/geode/cache/client/internal/PingOp.java |  21 +--
 .../geode/cache/client/internal/ServerProxy.java   |  10 ++
 .../distributed/internal/LocatorLoadSnapshot.java  | 177 +++++----------------
 .../internal/ServerLocationAndMemberId.java        |  72 ---------
 .../geode/distributed/internal/ServerLocator.java  |  14 +-
 .../org/apache/geode/internal/DSFIDFactory.java    |   2 -
 .../internal/cache/DistributedPingMessage.java     |  79 ---------
 .../apache/geode/internal/cache/GridAdvisor.java   |  10 +-
 .../internal/cache/tier/sockets/command/Ping.java  |  48 +-----
 .../internal/LocatorLoadSnapshotJUnitTest.java     |  72 ++++-----
 .../sockets/ClientServerMiscDUnitTestBase.java     |  19 ---
 .../serialization/DataSerializableFixedID.java     |   2 -
 16 files changed, 102 insertions(+), 441 deletions(-)

diff --git a/geode-core/src/integrationTest/java/org/apache/geode/distributed/internal/LocatorLoadSnapshotIntegrationTest.java b/geode-core/src/integrationTest/java/org/apache/geode/distributed/internal/LocatorLoadSnapshotIntegrationTest.java
index f33327e..61bdcec 100644
--- a/geode-core/src/integrationTest/java/org/apache/geode/distributed/internal/LocatorLoadSnapshotIntegrationTest.java
+++ b/geode-core/src/integrationTest/java/org/apache/geode/distributed/internal/LocatorLoadSnapshotIntegrationTest.java
@@ -46,7 +46,6 @@ public class LocatorLoadSnapshotIntegrationTest {
     final int NUM_REQUESTS = 10000;
     int ALLOWED_THRESHOLD = 50; // We should never be off by more than
     // the number of concurrent threads.
-    final int LOAD_POLL_INTERVAL = 30000;
 
     final LocatorLoadSnapshot sn = new LocatorLoadSnapshot();
     final ServerLocation l1 = new ServerLocation("localhost", 1);
@@ -57,9 +56,9 @@ public class LocatorLoadSnapshotIntegrationTest {
     int initialLoad2 = (int) (Math.random() * (NUM_REQUESTS / 2));
     int initialLoad3 = (int) (Math.random() * (NUM_REQUESTS / 2));
 
-    sn.addServer(l1, "", new String[0], new ServerLoad(initialLoad1, 1, 0, 1), LOAD_POLL_INTERVAL);
-    sn.addServer(l2, "", new String[0], new ServerLoad(initialLoad2, 1, 0, 1), LOAD_POLL_INTERVAL);
-    sn.addServer(l3, "", new String[0], new ServerLoad(initialLoad3, 1, 0, 1), LOAD_POLL_INTERVAL);
+    sn.addServer(l1, new String[0], new ServerLoad(initialLoad1, 1, 0, 1));
+    sn.addServer(l2, new String[0], new ServerLoad(initialLoad2, 1, 0, 1));
+    sn.addServer(l3, new String[0], new ServerLoad(initialLoad3, 1, 0, 1));
 
     final Map loadCounts = new HashMap();
     loadCounts.put(l1, new AtomicInteger(initialLoad1));
diff --git a/geode-core/src/integrationTest/resources/org/apache/geode/codeAnalysis/sanctionedDataSerializables.txt b/geode-core/src/integrationTest/resources/org/apache/geode/codeAnalysis/sanctionedDataSerializables.txt
index 024c5d7..f305269 100644
--- a/geode-core/src/integrationTest/resources/org/apache/geode/codeAnalysis/sanctionedDataSerializables.txt
+++ b/geode-core/src/integrationTest/resources/org/apache/geode/codeAnalysis/sanctionedDataSerializables.txt
@@ -939,10 +939,6 @@ org/apache/geode/internal/cache/DistributedClearOperation$ClearRegionWithContext
 fromData,15
 toData,15
 
-org/apache/geode/internal/cache/DistributedPingMessage,2
-fromData,26
-toData,23
-
 org/apache/geode/internal/cache/DistributedPutAllOperation$EntryVersionsList,2
 fromData,272
 toData,292
diff --git a/geode-core/src/main/java/org/apache/geode/cache/client/internal/CacheServerLoadMessage.java b/geode-core/src/main/java/org/apache/geode/cache/client/internal/CacheServerLoadMessage.java
index 3646486..ad8412d 100644
--- a/geode-core/src/main/java/org/apache/geode/cache/client/internal/CacheServerLoadMessage.java
+++ b/geode-core/src/main/java/org/apache/geode/cache/client/internal/CacheServerLoadMessage.java
@@ -67,11 +67,13 @@ public class CacheServerLoadMessage extends SerialDistributionMessage {
       InternalLocator l = (InternalLocator) locators.get(i);
       ServerLocator serverLocator = l.getServerLocatorAdvisee();
       if (serverLocator != null) {
-        serverLocator.updateLoad(location, this.getSender().getUniqueId(), load, this.clientIds);
+        serverLocator.updateLoad(location, load, this.clientIds);
       }
     }
   }
 
+
+
   @Override
   public int getDSFID() {
     return CACHE_SERVER_LOAD_MESSAGE;
diff --git a/geode-core/src/main/java/org/apache/geode/cache/client/internal/LiveServerPinger.java b/geode-core/src/main/java/org/apache/geode/cache/client/internal/LiveServerPinger.java
index 623d976..0b13f1b 100644
--- a/geode-core/src/main/java/org/apache/geode/cache/client/internal/LiveServerPinger.java
+++ b/geode-core/src/main/java/org/apache/geode/cache/client/internal/LiveServerPinger.java
@@ -87,7 +87,7 @@ public class LiveServerPinger extends EndpointListenerAdapter {
     public void run2() {
       if (endpoint.timeToPing(pingIntervalNanos)) {
         try {
-          PingOp.execute(pool, endpoint.getLocation(), endpoint.getMemberId());
+          PingOp.execute(pool, endpoint.getLocation());
         } catch (Exception e) {
           if (logger.isDebugEnabled()) {
             logger.debug("Error occurred while pinging server: {} - {}", endpoint.getLocation(),
diff --git a/geode-core/src/main/java/org/apache/geode/cache/client/internal/PingOp.java b/geode-core/src/main/java/org/apache/geode/cache/client/internal/PingOp.java
index d290b06..6429098 100644
--- a/geode-core/src/main/java/org/apache/geode/cache/client/internal/PingOp.java
+++ b/geode-core/src/main/java/org/apache/geode/cache/client/internal/PingOp.java
@@ -14,7 +14,6 @@
  */
 package org.apache.geode.cache.client.internal;
 
-import org.apache.geode.distributed.DistributedMember;
 import org.apache.geode.distributed.internal.ServerLocation;
 import org.apache.geode.internal.cache.tier.MessageType;
 import org.apache.geode.internal.cache.tier.sockets.Message;
@@ -30,12 +29,11 @@ public class PingOp {
    * Ping the specified server to see if it is still alive
    *
    * @param pool the pool to use to communicate with the server.
-   * @param serverLocation the server to do the execution on
+   * @param server the server to do the execution on
    */
-  public static void execute(ExecutablePool pool, ServerLocation serverLocation,
-      DistributedMember serverID) {
-    AbstractOp op = new PingOpImpl(serverLocation, serverID);
-    pool.executeOn(serverLocation, op, false, false);
+  public static void execute(ExecutablePool pool, ServerLocation server) {
+    AbstractOp op = new PingOpImpl();
+    pool.executeOn(server, op, false, false);
   }
 
   private PingOp() {
@@ -45,16 +43,12 @@ public class PingOp {
   static class PingOpImpl extends AbstractOp {
 
     private long startTime;
-    private ServerLocation location;
-    private final DistributedMember serverID;
 
     /**
      * @throws org.apache.geode.SerializationException if serialization fails
      */
-    PingOpImpl(ServerLocation location, DistributedMember serverID) {
+    PingOpImpl() {
       super(MessageType.PING, 0);
-      this.location = location;
-      this.serverID = serverID;
     }
 
     @Override
@@ -71,9 +65,8 @@ public class PingOp {
     @Override
     protected void sendMessage(Connection cnx) throws Exception {
       getMessage().clearMessageHasSecurePartFlag();
-      getMessage().setNumberOfParts(1);
-      getMessage().addObjPart(serverID);
-      getMessage().send(true);
+      this.startTime = System.currentTimeMillis();
+      getMessage().send(false);
       Message.MESSAGE_TYPE.set(MessageType.PING);
     }
 
diff --git a/geode-core/src/main/java/org/apache/geode/cache/client/internal/ServerProxy.java b/geode-core/src/main/java/org/apache/geode/cache/client/internal/ServerProxy.java
index 5f9c7b9..675a55e5 100644
--- a/geode-core/src/main/java/org/apache/geode/cache/client/internal/ServerProxy.java
+++ b/geode-core/src/main/java/org/apache/geode/cache/client/internal/ServerProxy.java
@@ -16,6 +16,7 @@ package org.apache.geode.cache.client.internal;
 
 
 import org.apache.geode.cache.query.SelectResults;
+import org.apache.geode.distributed.internal.ServerLocation;
 
 /**
  * Used to send operations from a client to a server.
@@ -49,6 +50,15 @@ public class ServerProxy {
   }
 
   /**
+   * Ping the specified server to see if it is still alive
+   *
+   * @param server the server to do the execution on
+   */
+  public void ping(ServerLocation server) {
+    PingOp.execute(this.pool, server);
+  }
+
+  /**
    * Does a query on a server
    *
    * @param queryPredicate A query language boolean query predicate
diff --git a/geode-core/src/main/java/org/apache/geode/distributed/internal/LocatorLoadSnapshot.java b/geode-core/src/main/java/org/apache/geode/distributed/internal/LocatorLoadSnapshot.java
index d153927..f0ba83b 100644
--- a/geode-core/src/main/java/org/apache/geode/distributed/internal/LocatorLoadSnapshot.java
+++ b/geode-core/src/main/java/org/apache/geode/distributed/internal/LocatorLoadSnapshot.java
@@ -50,8 +50,7 @@ public class LocatorLoadSnapshot {
 
   private final Map<ServerLocation, String[]> serverGroupMap = new HashMap<>();
 
-  private final Map<String, Map<ServerLocationAndMemberId, LoadHolder>> connectionLoadMap =
-      new HashMap<>();
+  private final Map<String, Map<ServerLocation, LoadHolder>> connectionLoadMap = new HashMap<>();
 
   private final Map<String, Map<ServerLocation, LoadHolder>> queueLoadMap = new HashMap<>();
 
@@ -85,27 +84,29 @@ public class LocatorLoadSnapshot {
     }
   }
 
+  public void addServer(ServerLocation location, String[] groups, ServerLoad initialLoad) {
+    addServer(location, groups, initialLoad, 30000);
+  }
+
   /**
    * Add a new server to the load snapshot.
    */
-  public synchronized void addServer(ServerLocation location, String memberId, String[] groups,
+  public synchronized void addServer(ServerLocation location, String[] groups,
       ServerLoad initialLoad, long loadPollInterval) {
     serverGroupMap.put(location, groups);
-    LoadHolder connectionLoad =
-        new LoadHolder(location, initialLoad.getConnectionLoad(),
-            initialLoad.getLoadPerConnection(), loadPollInterval);
-    addGroups(connectionLoadMap, groups, connectionLoad, memberId);
-    LoadHolder queueLoad = new LoadHolder(location,
-        initialLoad.getSubscriptionConnectionLoad(),
+    LoadHolder connectionLoad = new LoadHolder(location, initialLoad.getConnectionLoad(),
+        initialLoad.getLoadPerConnection(), loadPollInterval);
+    addGroups(connectionLoadMap, groups, connectionLoad);
+    LoadHolder queueLoad = new LoadHolder(location, initialLoad.getSubscriptionConnectionLoad(),
         initialLoad.getLoadPerSubscriptionConnection(), loadPollInterval);
     addGroups(queueLoadMap, groups, queueLoad);
-    updateLoad(location, memberId, initialLoad);
+    updateLoad(location, initialLoad);
   }
 
   /**
    * Remove a server from the load snapshot.
    */
-  public synchronized void removeServer(ServerLocation location, String memberId) {
+  public synchronized void removeServer(ServerLocation location) {
     String[] groups = serverGroupMap.remove(location);
     /*
      * Adding null check for #41522 - we were getting a remove from a BridgeServer that was shutting
@@ -113,21 +114,20 @@ public class LocatorLoadSnapshot {
      * be a race from profile add / remove from different channels.
      */
     if (groups != null) {
-      removeFromMap(connectionLoadMap, groups, location, memberId);
+      removeFromMap(connectionLoadMap, groups, location);
       removeFromMap(queueLoadMap, groups, location);
     }
   }
 
-  public void updateLoad(ServerLocation location, String memberId, ServerLoad newLoad) {
-    updateLoad(location, memberId, newLoad, null);
+  public void updateLoad(ServerLocation location, ServerLoad newLoad) {
+    updateLoad(location, newLoad, null);
   }
 
   /**
    * Update the load information for a server that was previously added.
    */
-  synchronized void updateLoad(ServerLocation location, String memberId, ServerLoad newLoad,
+  synchronized void updateLoad(ServerLocation location, ServerLoad newLoad,
       List<ClientProxyMembershipID> clientIds) {
-
     String[] groups = serverGroupMap.get(location);
     // the server was asynchronously removed, so don't do anything.
     if (groups == null) {
@@ -140,7 +140,7 @@ public class LocatorLoadSnapshot {
       }
     }
 
-    updateMap(connectionLoadMap, location, memberId, newLoad.getConnectionLoad(),
+    updateMap(connectionLoadMap, location, newLoad.getConnectionLoad(),
         newLoad.getLoadPerConnection());
     updateMap(queueLoadMap, location, newLoad.getSubscriptionConnectionLoad(),
         newLoad.getLoadPerSubscriptionConnection());
@@ -151,15 +151,15 @@ public class LocatorLoadSnapshot {
       group = null;
     }
 
-    Map<ServerLocationAndMemberId, LoadHolder> groupServers = connectionLoadMap.get(group);
+    Map<ServerLocation, LoadHolder> groupServers = connectionLoadMap.get(group);
     return isBalanced(groupServers);
   }
 
-  private synchronized boolean isBalanced(Map<ServerLocationAndMemberId, LoadHolder> groupServers) {
+  private synchronized boolean isBalanced(Map<ServerLocation, LoadHolder> groupServers) {
     return isBalanced(groupServers, false);
   }
 
-  private synchronized boolean isBalanced(Map<ServerLocationAndMemberId, LoadHolder> groupServers,
+  private synchronized boolean isBalanced(Map<ServerLocation, LoadHolder> groupServers,
       boolean withThresholdCheck) {
     if (groupServers == null || groupServers.isEmpty()) {
       return true;
@@ -169,7 +169,7 @@ public class LocatorLoadSnapshot {
     float largestLoadPerConnection = Float.MIN_VALUE;
     float worstLoad = Float.MIN_VALUE;
 
-    for (Entry<ServerLocationAndMemberId, LoadHolder> loadHolderEntry : groupServers.entrySet()) {
+    for (Entry<ServerLocation, LoadHolder> loadHolderEntry : groupServers.entrySet()) {
       LoadHolder nextLoadReference = loadHolderEntry.getValue();
       float nextLoad = nextLoadReference.getLoad();
       float nextLoadPerConnection = nextLoadReference.getLoadPerConnection();
@@ -246,13 +246,13 @@ public class LocatorLoadSnapshot {
       group = null;
     }
 
-    Map<ServerLocationAndMemberId, LoadHolder> groupServers = connectionLoadMap.get(group);
+    Map<ServerLocation, LoadHolder> groupServers = connectionLoadMap.get(group);
     if (groupServers == null || groupServers.isEmpty()) {
       return null;
     }
 
     {
-      List bestLHs = findBestServersUsingMemberId(groupServers, excludedServers, 1);
+      List bestLHs = findBestServers(groupServers, excludedServers, 1);
       if (bestLHs.isEmpty()) {
         return null;
       }
@@ -266,15 +266,12 @@ public class LocatorLoadSnapshot {
     if ("".equals(group)) {
       group = null;
     }
-    Map<ServerLocationAndMemberId, LoadHolder> groupServers = connectionLoadMap.get(group);
+    Map<ServerLocation, LoadHolder> groupServers = connectionLoadMap.get(group);
     if (groupServers == null || groupServers.isEmpty()) {
       return null;
     }
-    ArrayList result = new ArrayList<>();
-    for (ServerLocationAndMemberId locationAndMemberId : groupServers.keySet()) {
-      result.add(locationAndMemberId.getServerLocation());
-    }
-    return result;
+
+    return new ArrayList<>(groupServers.keySet());
   }
 
   public void shutDown() {
@@ -282,7 +279,7 @@ public class LocatorLoadSnapshot {
   }
 
   /**
-   * Pick the least loaded server in the given group if currentServer is the most loaded server.
+   * Pick the least loaded server in the given group if currentServer is the most loaded server. n
    *
    * @param group the group, or null or "" if the client has no server group.
    * @param excludedServers a list of servers to exclude as choices
@@ -295,7 +292,7 @@ public class LocatorLoadSnapshot {
       group = null;
     }
 
-    Map<ServerLocationAndMemberId, LoadHolder> groupServers = connectionLoadMap.get(group);
+    Map<ServerLocation, LoadHolder> groupServers = connectionLoadMap.get(group);
     if (groupServers == null || groupServers.isEmpty()) {
       return null;
     }
@@ -311,7 +308,7 @@ public class LocatorLoadSnapshot {
       return currentServer;
     }
     {
-      List<LoadHolder> bestLHs = findBestServersUsingMemberId(groupServers, excludedServers, 1);
+      List<LoadHolder> bestLHs = findBestServers(groupServers, excludedServers, 1);
       if (bestLHs.isEmpty()) {
         return null;
       }
@@ -394,13 +391,13 @@ public class LocatorLoadSnapshot {
    * each server.
    */
   public synchronized Map<ServerLocation, ServerLoad> getLoadMap() {
-    Map<ServerLocationAndMemberId, LoadHolder> connectionMap = connectionLoadMap.get(null);
+    Map<ServerLocation, LoadHolder> connectionMap = connectionLoadMap.get(null);
     Map<ServerLocation, LoadHolder> queueMap = queueLoadMap.get(null);
     Map<ServerLocation, ServerLoad> result = new HashMap<>();
 
-    for (Entry<ServerLocationAndMemberId, LoadHolder> entry : connectionMap
+    for (Entry<ServerLocation, LoadHolder> entry : connectionMap
         .entrySet()) {
-      ServerLocation location = entry.getKey().getServerLocation();
+      ServerLocation location = entry.getKey();
       LoadHolder connectionLoad = entry.getValue();
       LoadHolder queueLoad = queueMap.get(location);
       // was asynchronously removed
@@ -428,22 +425,6 @@ public class LocatorLoadSnapshot {
     }
   }
 
-  private void addGroups(Map<String, Map<ServerLocationAndMemberId, LoadHolder>> map,
-      String[] groups,
-      LoadHolder holder, String memberId) {
-    for (String group : groups) {
-      Map<ServerLocationAndMemberId, LoadHolder> groupMap =
-          map.computeIfAbsent(group, k -> new HashMap<>());
-      groupMap.put(new ServerLocationAndMemberId(holder.getLocation(), memberId), holder);
-    }
-    // Special case for GatewayReceiver where we don't put those serverlocation against holder
-    if (!(groups.length > 0 && groups[0].equals(GatewayReceiver.RECEIVER_GROUP))) {
-      Map<ServerLocationAndMemberId, LoadHolder> groupMap =
-          map.computeIfAbsent(null, k -> new HashMap<>());
-      groupMap.put(new ServerLocationAndMemberId(holder.getLocation(), memberId), holder);
-    }
-  }
-
   private void removeFromMap(Map<String, Map<ServerLocation, LoadHolder>> map, String[] groups,
       ServerLocation location) {
     for (String group : groups) {
@@ -459,24 +440,6 @@ public class LocatorLoadSnapshot {
     groupMap.remove(location);
   }
 
-  private void removeFromMap(Map<String, Map<ServerLocationAndMemberId, LoadHolder>> map,
-      String[] groups,
-      ServerLocation location, String memberId) {
-    ServerLocationAndMemberId locationAndMemberId =
-        new ServerLocationAndMemberId(location, memberId);
-    for (String group : groups) {
-      Map<ServerLocationAndMemberId, LoadHolder> groupMap = map.get(group);
-      if (groupMap != null) {
-        groupMap.remove(locationAndMemberId);
-        if (groupMap.size() == 0) {
-          map.remove(group);
-        }
-      }
-    }
-    Map groupMap = map.get(null);
-    groupMap.remove(locationAndMemberId);
-  }
-
   private void updateMap(Map map, ServerLocation location, float load, float loadPerConnection) {
     Map groupMap = (Map) map.get(null);
     LoadHolder holder = (LoadHolder) groupMap.get(location);
@@ -485,65 +448,6 @@ public class LocatorLoadSnapshot {
     }
   }
 
-  private void updateMap(Map map, ServerLocation location, String memberId, float load,
-      float loadPerConnection) {
-    Map groupMap = (Map) map.get(null);
-    ServerLocationAndMemberId locationAndMemberId =
-        new ServerLocationAndMemberId(location, memberId);
-    LoadHolder holder =
-        (LoadHolder) groupMap.get(locationAndMemberId);
-
-    if (holder != null) {
-      holder.setLoad(load, loadPerConnection);
-    }
-  }
-
-  /**
-   *
-   * @param groupServers the servers to consider
-   * @param excludedServers servers to exclude
-   * @param count how many you want. a negative number means all of them in order of best to worst
-   * @return a list of best...worst server LoadHolders
-   */
-  private List<LoadHolder> findBestServersUsingMemberId(
-      Map<ServerLocationAndMemberId, LoadHolder> groupServers,
-      Set<ServerLocation> excludedServers, int count) {
-
-    TreeSet<LoadHolder> bestEntries = new TreeSet<>((l1, l2) -> {
-      int difference = Float.compare(l1.getLoad(), l2.getLoad());
-      if (difference != 0) {
-        return difference;
-      }
-      ServerLocation sl1 = l1.getLocation();
-      ServerLocation sl2 = l2.getLocation();
-      return sl1.compareTo(sl2);
-    });
-
-    boolean retainAll = (count < 0);
-    float lastBestLoad = Float.MAX_VALUE;
-
-    for (Map.Entry<ServerLocationAndMemberId, LoadHolder> loadEntry : groupServers.entrySet()) {
-      ServerLocation location = loadEntry.getKey().getServerLocation();
-      if (excludedServers.contains(location)) {
-        continue;
-      }
-
-      LoadHolder nextLoadReference = loadEntry.getValue();
-      float nextLoad = nextLoadReference.getLoad();
-
-      if ((bestEntries.size() < count) || retainAll || (nextLoad < lastBestLoad)) {
-        bestEntries.add(nextLoadReference);
-        if (!retainAll && (bestEntries.size() > count)) {
-          bestEntries.remove(bestEntries.last());
-        }
-        LoadHolder lastBestHolder = bestEntries.last();
-        lastBestLoad = lastBestHolder.getLoad();
-      }
-    }
-
-    return new ArrayList<>(bestEntries);
-  }
-
   /**
    *
    * @param groupServers the servers to consider
@@ -589,26 +493,17 @@ public class LocatorLoadSnapshot {
     return new ArrayList<>(bestEntries);
   }
 
-
   /**
    * If it is most loaded then return its LoadHolder; otherwise return null;
    */
   private LoadHolder isCurrentServerMostLoaded(ServerLocation currentServer,
-      Map<ServerLocationAndMemberId, LoadHolder> groupServers) {
-
-    // Check if there are keys in the map that contains currentServer.
-    LoadHolder currentLH = null;
-    for (ServerLocationAndMemberId locationAndMemberId : groupServers.keySet()) {
-      if (currentServer.equals(locationAndMemberId.getServerLocation())) {
-        currentLH = groupServers.get(locationAndMemberId);
-        break;
-      }
-    }
+      Map<ServerLocation, LoadHolder> groupServers) {
+    final LoadHolder currentLH = groupServers.get(currentServer);
     if (currentLH == null)
       return null;
     final float currentLoad = currentLH.getLoad();
-    for (Map.Entry<ServerLocationAndMemberId, LoadHolder> loadEntry : groupServers.entrySet()) {
-      ServerLocation location = loadEntry.getKey().getServerLocation();
+    for (Map.Entry<ServerLocation, LoadHolder> loadEntry : groupServers.entrySet()) {
+      ServerLocation location = loadEntry.getKey();
       if (location.equals(currentServer)) {
         continue;
       }
diff --git a/geode-core/src/main/java/org/apache/geode/distributed/internal/ServerLocationAndMemberId.java b/geode-core/src/main/java/org/apache/geode/distributed/internal/ServerLocationAndMemberId.java
deleted file mode 100644
index 878fa34..0000000
--- a/geode-core/src/main/java/org/apache/geode/distributed/internal/ServerLocationAndMemberId.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
- * agreements. See the NOTICE file distributed with this work for additional information regarding
- * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance with the License. You may obtain a
- * copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License
- * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied. See the License for the specific language governing permissions and limitations under
- * the License.
- */
-package org.apache.geode.distributed.internal;
-
-public class ServerLocationAndMemberId {
-
-  private ServerLocation serverLocation;
-  private String memberId;
-
-  public ServerLocationAndMemberId() {}
-
-  public ServerLocationAndMemberId(ServerLocation serverLocation) {
-    this.serverLocation = serverLocation;
-    memberId = "";
-  }
-
-  public ServerLocationAndMemberId(ServerLocation serverLocation, String memberId) {
-    this(serverLocation);
-    this.memberId = memberId;
-  }
-
-  public ServerLocation getServerLocation() {
-    return this.serverLocation;
-  }
-
-  public String getMemberId() {
-    return this.memberId;
-  }
-
-  @Override
-  public boolean equals(Object obj) {
-    if (this == obj)
-      return true;
-    if (obj == null)
-      return false;
-    if (!(obj instanceof ServerLocationAndMemberId))
-      return false;
-    final ServerLocationAndMemberId other = (ServerLocationAndMemberId) obj;
-
-    if (!this.serverLocation.equals(other.getServerLocation())) {
-      return false;
-    }
-
-    return this.memberId.equals(other.getMemberId());
-  }
-
-  @Override
-  public String toString() {
-    return serverLocation.toString() + "@" + memberId;
-  }
-
-  @Override
-  public int hashCode() {
-    final int prime = 31;
-    int result = 1;
-    result =
-        prime * result + serverLocation.hashCode() + ((memberId != null) ? memberId.hashCode() : 0);
-    return result;
-  }
-}
diff --git a/geode-core/src/main/java/org/apache/geode/distributed/internal/ServerLocator.java b/geode-core/src/main/java/org/apache/geode/distributed/internal/ServerLocator.java
index 4442073..075489f 100755
--- a/geode-core/src/main/java/org/apache/geode/distributed/internal/ServerLocator.java
+++ b/geode-core/src/main/java/org/apache/geode/distributed/internal/ServerLocator.java
@@ -405,9 +405,7 @@ public class ServerLocator implements TcpHandler, RestartHandler, DistributionAd
       CacheServerProfile bp = (CacheServerProfile) profile;
       ServerLocation location = buildServerLocation(bp);
       String[] groups = bp.getGroups();
-      loadSnapshot.addServer(
-          location, bp.getDistributedMember().getUniqueId(), groups,
-          bp.getInitialLoad(), bp.getLoadPollInterval());
+      loadSnapshot.addServer(location, groups, bp.getInitialLoad(), bp.getLoadPollInterval());
       if (logger.isDebugEnabled()) {
         logger.debug("ServerLocator: Received load from a new server {}, {}", location,
             bp.getInitialLoad());
@@ -425,7 +423,7 @@ public class ServerLocator implements TcpHandler, RestartHandler, DistributionAd
       CacheServerProfile bp = (CacheServerProfile) profile;
       // InternalDistributedMember id = bp.getDistributedMember();
       ServerLocation location = buildServerLocation(bp);
-      loadSnapshot.removeServer(location, bp.getDistributedMember().getUniqueId());
+      loadSnapshot.removeServer(location);
       if (logger.isDebugEnabled()) {
         logger.debug("ServerLocator: server departed {}", location);
       }
@@ -443,14 +441,12 @@ public class ServerLocator implements TcpHandler, RestartHandler, DistributionAd
         .warning("ServerLocator - unexpected profile update.");
   }
 
-  public void updateLoad(ServerLocation location, String memberId, ServerLoad load,
-      List clientIds) {
+  public void updateLoad(ServerLocation location, ServerLoad load, List clientIds) {
     if (getLogWriter().fineEnabled()) {
       getLogWriter()
-          .fine("ServerLocator: Received a load update from " + location + " at " + memberId + " , "
-              + load);
+          .fine("ServerLocator: Received a load update from " + location + ", " + load);
     }
-    loadSnapshot.updateLoad(location, memberId, load, clientIds);
+    loadSnapshot.updateLoad(location, load, clientIds);
     this.stats.incServerLoadUpdates();
     logServers();
   }
diff --git a/geode-core/src/main/java/org/apache/geode/internal/DSFIDFactory.java b/geode-core/src/main/java/org/apache/geode/internal/DSFIDFactory.java
index 59e9bc2..993ad3e 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/DSFIDFactory.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/DSFIDFactory.java
@@ -203,7 +203,6 @@ import org.apache.geode.internal.cache.DistTXPrecommitMessage.DistTxPrecommitRes
 import org.apache.geode.internal.cache.DistTXRollbackMessage;
 import org.apache.geode.internal.cache.DistributedClearOperation.ClearRegionMessage;
 import org.apache.geode.internal.cache.DistributedClearOperation.ClearRegionWithContextMessage;
-import org.apache.geode.internal.cache.DistributedPingMessage;
 import org.apache.geode.internal.cache.DistributedPutAllOperation.EntryVersionsList;
 import org.apache.geode.internal.cache.DistributedPutAllOperation.PutAllMessage;
 import org.apache.geode.internal.cache.DistributedRegionFunctionStreamingMessage;
@@ -975,7 +974,6 @@ public class DSFIDFactory implements DataSerializableFixedID {
         GatewaySenderQueueEntrySynchronizationOperation.GatewaySenderQueueEntrySynchronizationEntry.class);
     serializer.registerDSFID(ABORT_BACKUP_REQUEST, AbortBackupRequest.class);
     serializer.registerDSFID(HOST_AND_PORT, HostAndPort.class);
-    serializer.registerDSFID(DISTRIBUTED_PING_MESSAGE, DistributedPingMessage.class);
   }
 
   /**
diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/DistributedPingMessage.java b/geode-core/src/main/java/org/apache/geode/internal/cache/DistributedPingMessage.java
deleted file mode 100644
index 8eda0fa..0000000
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/DistributedPingMessage.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
- * agreements. See the NOTICE file distributed with this work for additional information regarding
- * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance with the License. You may obtain a
- * copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License
- * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied. See the License for the specific language governing permissions and limitations under
- * the License.
- */
-package org.apache.geode.internal.cache;
-
-import java.io.DataInput;
-import java.io.DataOutput;
-import java.io.IOException;
-
-import org.apache.geode.distributed.DistributedMember;
-import org.apache.geode.distributed.internal.ClusterDistributionManager;
-import org.apache.geode.distributed.internal.HighPriorityDistributionMessage;
-import org.apache.geode.distributed.internal.membership.InternalDistributedMember;
-import org.apache.geode.internal.cache.tier.sockets.ClientHealthMonitor;
-import org.apache.geode.internal.cache.tier.sockets.ClientProxyMembershipID;
-import org.apache.geode.internal.serialization.DeserializationContext;
-import org.apache.geode.internal.serialization.SerializationContext;
-import org.apache.geode.internal.serialization.Version;
-
-public class DistributedPingMessage extends HighPriorityDistributionMessage {
-  private ClientProxyMembershipID proxyID;
-
-  public DistributedPingMessage() {
-    // no-arg constructor for serialization
-  }
-
-  public DistributedPingMessage(DistributedMember targetServer, ClientProxyMembershipID proxyID) {
-    super();
-    this.proxyID = proxyID;
-    setRecipient((InternalDistributedMember) targetServer);
-  }
-
-  @Override
-  protected void process(ClusterDistributionManager dm) {
-    ClientHealthMonitor chm = ClientHealthMonitor.getInstance();
-    if (chm != null) {
-      chm.receivedPing(proxyID);
-    }
-  }
-
-  @Override
-  public void toData(DataOutput out, SerializationContext context) throws IOException {
-    super.toData(out, context);
-    context.getSerializer().writeObject(proxyID, out);
-  }
-
-  @Override
-  public void fromData(DataInput in, DeserializationContext context)
-      throws IOException, ClassNotFoundException {
-    super.fromData(in, context);
-    proxyID = context.getDeserializer().readObject(in);
-  }
-
-  @Override
-  public int getDSFID() {
-    return DISTRIBUTED_PING_MESSAGE;
-  }
-
-  @Override
-  public Version[] getSerializationVersions() {
-    return null;
-  }
-
-  @Override
-  public String toString() {
-    return super.toString() + "; proxyId=" + proxyID;
-  }
-}
diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/GridAdvisor.java b/geode-core/src/main/java/org/apache/geode/internal/cache/GridAdvisor.java
index 8097118..98faad2 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/GridAdvisor.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/GridAdvisor.java
@@ -418,24 +418,18 @@ public abstract class GridAdvisor extends DistributionAdvisor {
     public int hashCode() {
       final String thisHost = this.gp.getHost();
       final int thisPort = this.gp.getPort();
-      final String thisMemberId = this.getMemberId().getUniqueId();
-      final int thisMemberIdHashCode = (thisMemberId != null) ? thisMemberId.hashCode() : 0;
-      return thisHost != null ? (thisHost.hashCode() ^ thisPort) + thisMemberIdHashCode
-          : thisPort + thisMemberIdHashCode;
+      return thisHost != null ? (thisHost.hashCode() ^ thisPort) : thisPort;
     }
 
     @Override
     public boolean equals(Object obj) {
       if (obj instanceof GridProfileId) {
         final GridProfileId other = (GridProfileId) obj;
-
         if (this.gp.getPort() == other.gp.getPort()) {
           final String thisHost = this.gp.getHost();
           final String otherHost = other.gp.getHost();
           if (thisHost != null) {
-            if (thisHost.equals(otherHost)) {
-              return this.getMemberId().equals(other.getMemberId());
-            }
+            return thisHost.equals(otherHost);
           } else {
             return (otherHost == null);
           }
diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Ping.java b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Ping.java
index b290025..ea90f14 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Ping.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Ping.java
@@ -17,9 +17,8 @@ package org.apache.geode.internal.cache.tier.sockets.command;
 import java.io.IOException;
 
 import org.apache.geode.annotations.Immutable;
-import org.apache.geode.distributed.DistributedMember;
 import org.apache.geode.distributed.internal.DistributionStats;
-import org.apache.geode.internal.cache.DistributedPingMessage;
+import org.apache.geode.internal.cache.tier.CachedRegionHelper;
 import org.apache.geode.internal.cache.tier.Command;
 import org.apache.geode.internal.cache.tier.MessageType;
 import org.apache.geode.internal.cache.tier.sockets.BaseCommand;
@@ -48,27 +47,10 @@ public class Ping extends BaseCommand {
           clientMessage.getTransactionId(), serverConnection.getSocketString(),
           (DistributionStats.getStatTime() - start));
     }
-    if (clientMessage.getNumberOfParts() > 0) {
-      try {
-        DistributedMember targetServer = (DistributedMember) clientMessage.getPart(0).getObject();
-        DistributedMember myID = serverConnection.getCache().getMyId();
-        if (!myID.equals(targetServer)) {
-          pingCorrectServer(clientMessage, targetServer, serverConnection);
-          writeReply(clientMessage, serverConnection);
-          serverConnection.setAsTrue(RESPONDED);
-          return;
-        }
-      } catch (ClassNotFoundException e) {
-        logger.warn("Unable to deserialize message from " + serverConnection.getProxyID());
-        writeErrorResponse(clientMessage, MessageType.PING, serverConnection);
-        serverConnection.setAsTrue(RESPONDED);
-        return;
-      }
-    }
     ClientHealthMonitor chm = ClientHealthMonitor.getInstance();
-    if (chm != null) {
+    if (chm != null)
       chm.receivedPing(serverConnection.getProxyID());
-    }
+    CachedRegionHelper crHelper = serverConnection.getCachedRegionHelper();
 
     writeReply(clientMessage, serverConnection);
     serverConnection.setAsTrue(RESPONDED);
@@ -78,30 +60,6 @@ public class Ping extends BaseCommand {
     }
   }
 
-  /**
-   * Process a ping request that was sent to the wrong server
-   */
-  protected void pingCorrectServer(Message clientMessage, DistributedMember targetServer,
-      ServerConnection serverConnection)
-      throws IOException {
-    if (logger.isDebugEnabled()) {
-      logger.debug("Received a Ping request from {} intended for {}. Forwarding the ping...",
-          serverConnection.getProxyID(), targetServer);
-    }
-    if (!serverConnection.getCache().getDistributionManager().isCurrentMember(targetServer)) {
-      logger.warn("Unable to ping non-member {} for client {}", targetServer,
-          serverConnection.getProxyID());
-      writeErrorResponse(clientMessage, MessageType.PING, serverConnection);
-      serverConnection.setAsTrue(RESPONDED);
-    } else {
-      // send a ping message to the server. This is a one-way message that doesn't send a reply
-      final DistributedPingMessage distributedPingMessage =
-          new DistributedPingMessage(targetServer, serverConnection.getProxyID());
-      serverConnection.getCache().getDistributionManager().putOutgoing(distributedPingMessage);
-      writeReply(clientMessage, serverConnection);
-    }
-  }
-
   @Override
   protected void writeReply(Message origMsg, ServerConnection serverConnection) throws IOException {
     Message replyMsg = serverConnection.getReplyMessage();
diff --git a/geode-core/src/test/java/org/apache/geode/distributed/internal/LocatorLoadSnapshotJUnitTest.java b/geode-core/src/test/java/org/apache/geode/distributed/internal/LocatorLoadSnapshotJUnitTest.java
index e7d20c9..5a38b28 100644
--- a/geode-core/src/test/java/org/apache/geode/distributed/internal/LocatorLoadSnapshotJUnitTest.java
+++ b/geode-core/src/test/java/org/apache/geode/distributed/internal/LocatorLoadSnapshotJUnitTest.java
@@ -39,8 +39,6 @@ import org.apache.geode.test.junit.categories.MembershipTest;
 @Category({MembershipTest.class})
 public class LocatorLoadSnapshotJUnitTest {
 
-  final int LOAD_POLL_INTERVAL = 30000;
-
   /**
    * Test to make sure than an empty snapshot returns the correct values.
    */
@@ -64,8 +62,8 @@ public class LocatorLoadSnapshotJUnitTest {
     ServerLocation l2 = new ServerLocation("localhost", 2);
     ServerLoad ld1 = new ServerLoad(3, 1, 1.01f, 1);
     ServerLoad ld2 = new ServerLoad(5, .2f, 1f, .2f);
-    sn.addServer(l1, "", new String[0], ld1, LOAD_POLL_INTERVAL);
-    sn.addServer(l2, "", new String[0], ld2, LOAD_POLL_INTERVAL);
+    sn.addServer(l1, new String[0], ld1);
+    sn.addServer(l2, new String[0], ld2);
 
     HashMap expectedLoad = new HashMap();
     expectedLoad.put(l1, ld1);
@@ -105,12 +103,12 @@ public class LocatorLoadSnapshotJUnitTest {
     LocatorLoadSnapshot sn = new LocatorLoadSnapshot();
     ServerLocation l1 = new ServerLocation("localhost", 1);
     ServerLocation l2 = new ServerLocation("localhost", 2);
-    sn.addServer(l1, "", new String[0], new ServerLoad(1, 1, 1, 1), LOAD_POLL_INTERVAL);
-    sn.addServer(l2, "", new String[0], new ServerLoad(100, .2f, 1, .2f), LOAD_POLL_INTERVAL);
+    sn.addServer(l1, new String[0], new ServerLoad(1, 1, 1, 1));
+    sn.addServer(l2, new String[0], new ServerLoad(100, .2f, 1, .2f));
 
     assertEquals(l1, sn.getServerForConnection(null, Collections.EMPTY_SET));
     assertEquals(l1, sn.getServerForConnection(null, Collections.EMPTY_SET));
-    sn.updateLoad(l1, "", new ServerLoad(200, 1, 1, 1));
+    sn.updateLoad(l1, new ServerLoad(200, 1, 1, 1));
     assertEquals(l2, sn.getServerForConnection(null, Collections.EMPTY_SET));
     assertEquals(l2, sn.getServerForConnection(null, Collections.EMPTY_SET));
   }
@@ -124,13 +122,13 @@ public class LocatorLoadSnapshotJUnitTest {
     LocatorLoadSnapshot sn = new LocatorLoadSnapshot();
     ServerLocation l1 = new ServerLocation("localhost", 1);
     ServerLocation l2 = new ServerLocation("localhost", 2);
-    sn.addServer(l1, "", new String[0], new ServerLoad(1, 1, 1, 1), LOAD_POLL_INTERVAL);
-    sn.addServer(l2, "", new String[0], new ServerLoad(100, .2f, 10, .2f), LOAD_POLL_INTERVAL);
+    sn.addServer(l1, new String[0], new ServerLoad(1, 1, 1, 1));
+    sn.addServer(l2, new String[0], new ServerLoad(100, .2f, 10, .2f));
 
     assertEquals(l1, sn.getServerForConnection(null, Collections.EMPTY_SET));
     assertEquals(Arrays.asList(new ServerLocation[] {l1, l2}),
         sn.getServersForQueue(null, Collections.EMPTY_SET, -1));
-    sn.removeServer(l1, "");
+    sn.removeServer(l1);
     assertEquals(l2, sn.getServerForConnection(null, Collections.EMPTY_SET));
     assertEquals(Collections.singletonList(l2),
         sn.getServersForQueue(null, Collections.EMPTY_SET, -1));
@@ -144,14 +142,14 @@ public class LocatorLoadSnapshotJUnitTest {
     LocatorLoadSnapshot sn = new LocatorLoadSnapshot();
     ServerLocation l1 = new ServerLocation("localhost", 1);
     ServerLocation l2 = new ServerLocation("localhost", 2);
-    sn.addServer(l1, "", new String[] {"a", "b"}, new ServerLoad(1, 1, 1, 1), LOAD_POLL_INTERVAL);
-    sn.addServer(l2, "", new String[] {"b", "c"}, new ServerLoad(1, 1, 1, 1), LOAD_POLL_INTERVAL);
+    sn.addServer(l1, new String[] {"a", "b"}, new ServerLoad(1, 1, 1, 1));
+    sn.addServer(l2, new String[] {"b", "c"}, new ServerLoad(1, 1, 1, 1));
     assertNotNull(sn.getServerForConnection(null, Collections.EMPTY_SET));
     assertEquals(l1, sn.getServerForConnection("a", Collections.EMPTY_SET));
     assertEquals(l2, sn.getServerForConnection("c", Collections.EMPTY_SET));
-    sn.updateLoad(l1, "", new ServerLoad(10, 1, 1, 1));
+    sn.updateLoad(l1, new ServerLoad(10, 1, 1, 1));
     assertEquals(l2, sn.getServerForConnection("b", Collections.EMPTY_SET));
-    sn.updateLoad(l2, "", new ServerLoad(100, 1, 1, 1));
+    sn.updateLoad(l2, new ServerLoad(100, 1, 1, 1));
     assertEquals(l1, sn.getServerForConnection("b", Collections.EMPTY_SET));
     assertEquals(Arrays.asList(new ServerLocation[] {l1}),
         sn.getServersForQueue("a", Collections.EMPTY_SET, -1));
@@ -164,7 +162,7 @@ public class LocatorLoadSnapshotJUnitTest {
     assertEquals(Arrays.asList(new ServerLocation[] {l1, l2}),
         sn.getServersForQueue("b", Collections.EMPTY_SET, 5));
 
-    sn.removeServer(l1, "");
+    sn.removeServer(l1);
     assertEquals(l2, sn.getServerForConnection("b", Collections.EMPTY_SET));
     assertEquals(l2, sn.getServerForConnection("b", Collections.EMPTY_SET));
     assertNull(sn.getServerForConnection("a", Collections.EMPTY_SET));
@@ -184,9 +182,9 @@ public class LocatorLoadSnapshotJUnitTest {
     ServerLocation l1 = new ServerLocation("localhost", 1);
     ServerLocation l2 = new ServerLocation("localhost", 2);
     ServerLocation l3 = new ServerLocation("localhost", 3);
-    sn.addServer(l1, "", new String[] {"a",}, new ServerLoad(0, 1, 0, 1), LOAD_POLL_INTERVAL);
-    sn.addServer(l2, "", new String[] {"a", "b"}, new ServerLoad(0, 1, 0, 1), LOAD_POLL_INTERVAL);
-    sn.addServer(l3, "", new String[] {"b"}, new ServerLoad(0, 1, 0, 1), LOAD_POLL_INTERVAL);
+    sn.addServer(l1, new String[] {"a",}, new ServerLoad(0, 1, 0, 1));
+    sn.addServer(l2, new String[] {"a", "b"}, new ServerLoad(0, 1, 0, 1));
+    sn.addServer(l3, new String[] {"b"}, new ServerLoad(0, 1, 0, 1));
 
     // Test with interleaving requests for either group
     for (int i = 0; i < 60; i++) {
@@ -203,9 +201,9 @@ public class LocatorLoadSnapshotJUnitTest {
     expected.put(l3, expectedLoad);
     assertEquals(expected, sn.getLoadMap());
 
-    sn.updateLoad(l1, "", new ServerLoad(0, 1, 0, 1));
-    sn.updateLoad(l2, "", new ServerLoad(0, 1, 0, 1));
-    sn.updateLoad(l3, "", new ServerLoad(0, 1, 0, 1));
+    sn.updateLoad(l1, new ServerLoad(0, 1, 0, 1));
+    sn.updateLoad(l2, new ServerLoad(0, 1, 0, 1));
+    sn.updateLoad(l3, new ServerLoad(0, 1, 0, 1));
 
 
     // Now do the same test, but make all the requests for one group first,
@@ -247,8 +245,8 @@ public class LocatorLoadSnapshotJUnitTest {
     LocatorLoadSnapshot sn = new LocatorLoadSnapshot();
     ServerLocation l1 = new ServerLocation("localhost", 1);
     ServerLocation l2 = new ServerLocation("localhost", 2);
-    sn.addServer(l1, "", new String[0], new ServerLoad(1, 1, 1, 1), LOAD_POLL_INTERVAL);
-    sn.addServer(l2, "", new String[0], new ServerLoad(100, 1, 100, 1), LOAD_POLL_INTERVAL);
+    sn.addServer(l1, new String[0], new ServerLoad(1, 1, 1, 1));
+    sn.addServer(l2, new String[0], new ServerLoad(100, 1, 100, 1));
 
     HashSet excludeAll = new HashSet();
     excludeAll.add(l1);
@@ -274,20 +272,20 @@ public class LocatorLoadSnapshotJUnitTest {
     final ServerLocation l2 = new ServerLocation("localhost", 2);
     final ServerLocation l3 = new ServerLocation("localhost", 3);
 
-    sn.addServer(l1, "", new String[] {"a"}, new ServerLoad(0, 1, 0, 1), LOAD_POLL_INTERVAL);
-    sn.addServer(l2, "", new String[] {"a", "b"}, new ServerLoad(0, 1, 0, 1), LOAD_POLL_INTERVAL);
-    sn.addServer(l3, "", new String[] {"b"}, new ServerLoad(0, 1, 0, 1), LOAD_POLL_INTERVAL);
+    sn.addServer(l1, new String[] {"a"}, new ServerLoad(0, 1, 0, 1));
+    sn.addServer(l2, new String[] {"a", "b"}, new ServerLoad(0, 1, 0, 1));
+    sn.addServer(l3, new String[] {"b"}, new ServerLoad(0, 1, 0, 1));
 
     assertTrue(sn.hasBalancedConnections(null));
     assertTrue(sn.hasBalancedConnections("a"));
     assertTrue(sn.hasBalancedConnections("b"));
 
-    sn.updateLoad(l1, "", new ServerLoad(1, 1, 0, 1));
+    sn.updateLoad(l1, new ServerLoad(1, 1, 0, 1));
     assertTrue(sn.hasBalancedConnections(null));
     assertTrue(sn.hasBalancedConnections("a"));
     assertTrue(sn.hasBalancedConnections("b"));
 
-    sn.updateLoad(l2, "", new ServerLoad(2, 1, 0, 1));
+    sn.updateLoad(l2, new ServerLoad(2, 1, 0, 1));
     assertFalse(sn.hasBalancedConnections(null));
     assertTrue(sn.hasBalancedConnections("a"));
     assertFalse(sn.hasBalancedConnections("b"));
@@ -306,12 +304,9 @@ public class LocatorLoadSnapshotJUnitTest {
     float l1ConnectionLoad = 50 + defaultLoadImbalanceThreshold;
     float l2ConnectionLoad = 50;
     float l3ConnectionLoad = 50 - defaultLoadImbalanceThreshold;
-    loadSnapshot.addServer(l1, "", new String[] {"a"}, new ServerLoad(l1ConnectionLoad, 1, 0, 1),
-        LOAD_POLL_INTERVAL);
-    loadSnapshot.addServer(l2, "", new String[] {"a", "b"},
-        new ServerLoad(l2ConnectionLoad, 1, 0, 1), LOAD_POLL_INTERVAL);
-    loadSnapshot.addServer(l3, "", new String[] {"b"}, new ServerLoad(l3ConnectionLoad, 1, 0, 1),
-        LOAD_POLL_INTERVAL);
+    loadSnapshot.addServer(l1, new String[] {"a"}, new ServerLoad(l1ConnectionLoad, 1, 0, 1));
+    loadSnapshot.addServer(l2, new String[] {"a", "b"}, new ServerLoad(l2ConnectionLoad, 1, 0, 1));
+    loadSnapshot.addServer(l3, new String[] {"b"}, new ServerLoad(l3ConnectionLoad, 1, 0, 1));
 
     // a new server should be selected until the load-imbalance-threshold is reached
     ServerLocation newServer = null;
@@ -351,12 +346,9 @@ public class LocatorLoadSnapshotJUnitTest {
     float l1ConnectionLoad = 50 + defaultLoadImbalanceThreshold - 1;
     float l2ConnectionLoad = 50;
     float l3ConnectionLoad = 50 + (defaultLoadImbalanceThreshold / 2);
-    loadSnapshot.addServer(l1, "", new String[] {"a"}, new ServerLoad(l1ConnectionLoad, 1, 0, 1),
-        LOAD_POLL_INTERVAL);
-    loadSnapshot.addServer(l2, "", new String[] {"a", "b"},
-        new ServerLoad(l2ConnectionLoad, 1, 0, 1), LOAD_POLL_INTERVAL);
-    loadSnapshot.addServer(l3, "", new String[] {"b"}, new ServerLoad(l3ConnectionLoad, 1, 0, 1),
-        LOAD_POLL_INTERVAL);
+    loadSnapshot.addServer(l1, new String[] {"a"}, new ServerLoad(l1ConnectionLoad, 1, 0, 1));
+    loadSnapshot.addServer(l2, new String[] {"a", "b"}, new ServerLoad(l2ConnectionLoad, 1, 0, 1));
+    loadSnapshot.addServer(l3, new String[] {"b"}, new ServerLoad(l3ConnectionLoad, 1, 0, 1));
 
     ServerLocation newServer =
         loadSnapshot.getReplacementServerForConnection(l1, "", Collections.EMPTY_SET);
diff --git a/geode-dunit/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientServerMiscDUnitTestBase.java b/geode-dunit/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientServerMiscDUnitTestBase.java
index 41599a8..af73fc7 100755
--- a/geode-dunit/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientServerMiscDUnitTestBase.java
+++ b/geode-dunit/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientServerMiscDUnitTestBase.java
@@ -63,7 +63,6 @@ import org.apache.geode.cache.client.PoolFactory;
 import org.apache.geode.cache.client.PoolManager;
 import org.apache.geode.cache.client.internal.Connection;
 import org.apache.geode.cache.client.internal.Op;
-import org.apache.geode.cache.client.internal.PingOp;
 import org.apache.geode.cache.client.internal.PoolImpl;
 import org.apache.geode.cache.client.internal.QueueConnectionImpl;
 import org.apache.geode.cache.client.internal.RegisterInterestTracker;
@@ -73,7 +72,6 @@ import org.apache.geode.cache30.CacheSerializableRunnable;
 import org.apache.geode.distributed.DistributedMember;
 import org.apache.geode.distributed.DistributedSystem;
 import org.apache.geode.distributed.DistributedSystemDisconnectedException;
-import org.apache.geode.distributed.internal.ServerLocation;
 import org.apache.geode.distributed.internal.membership.InternalDistributedMember;
 import org.apache.geode.internal.AvailablePort;
 import org.apache.geode.internal.cache.CachePerfStats;
@@ -520,23 +518,6 @@ public class ClientServerMiscDUnitTestBase extends JUnit4CacheTestCase {
 
   }
 
-  @Test
-  public void testPingWrongServer() throws Exception {
-    PORT1 = initServerCache(true);
-    initServerCache2();
-    InternalDistributedMember server2ID = server2.invoke("get ID", () -> cache.getMyId());
-    pool = (PoolImpl) createClientCache(NetworkUtils.getServerHostName(), PORT1);
-    // send the ping to server1 but use server2's identifier so the ping will be forwarded
-    PingOp.execute(pool, new ServerLocation(NetworkUtils.getServerHostName(), PORT1), server2ID);
-    ClientProxyMembershipID proxyID = server1.invoke(
-        () -> CacheClientNotifier.getInstance().getClientProxies().iterator().next().getProxyID());
-    // if the ping made it to server2 it will have the client's ID in its health monitor
-    server2.invoke(() -> {
-      assertThat(ClientHealthMonitor.getInstance().getClientHeartbeats().keySet().contains(proxyID))
-          .isTrue();
-    });
-  }
-
   /**
    * Test two regions: notify by subscription is true. Both the regions have registered interest in
    * all the keys. Destroy region1 on the client. It should reach the server , kill the region on
diff --git a/geode-serialization/src/main/java/org/apache/geode/internal/serialization/DataSerializableFixedID.java b/geode-serialization/src/main/java/org/apache/geode/internal/serialization/DataSerializableFixedID.java
index a11aaf1..e00dd64 100644
--- a/geode-serialization/src/main/java/org/apache/geode/internal/serialization/DataSerializableFixedID.java
+++ b/geode-serialization/src/main/java/org/apache/geode/internal/serialization/DataSerializableFixedID.java
@@ -57,8 +57,6 @@ public interface DataSerializableFixedID extends SerializationVersions, BasicSer
   // NOTE, codes < -65536 will take 4 bytes to serialize
   // NOTE, codes < -128 will take 2 bytes to serialize
 
-  short DISTRIBUTED_PING_MESSAGE = -160;
-
   short CREATE_REGION_MESSAGE_LUCENE = -159;
   short FINAL_CHECK_PASSED_MESSAGE = -158;
   short NETWORK_PARTITION_MESSAGE = -157;