@Test
  public void testOldClientIDDeserialization() throws Exception {
    // during a HandShake a clientID is read w/o knowing the client's version
    clientCache = new ClientCacheFactory().create();
    InternalDistributedMember memberID =
        (InternalDistributedMember) clientCache.getDistributedSystem().getDistributedMember();
    memberID.setVersionForTest(KnownVersion.GFE_81);
    assertThat(memberID.getVersion()).isEqualTo(KnownVersion.GFE_81);

    ClientProxyMembershipID clientID = ClientProxyMembershipID.getClientId(memberID);
    HeapDataOutputStream out = new HeapDataOutputStream(KnownVersion.GFE_81);
    DataSerializer.writeObject(clientID, out);

    DataInputStream in =
        new VersionedDataInputStream(new ByteArrayInputStream(out.toByteArray()),
            KnownVersion.CURRENT);
    ClientProxyMembershipID newID = DataSerializer.readObject(in);
    InternalDistributedMember newMemberID =
        (InternalDistributedMember) newID.getDistributedMember();
    assertThat(newMemberID.getVersion()).isEqualTo(KnownVersion.GFE_81);
    assertThat(newID.getClientVersion()).isEqualTo(KnownVersion.GFE_81);

    assertThat(newMemberID.getUuidLeastSignificantBits()).isEqualTo(0);
    assertThat(newMemberID.getUuidMostSignificantBits()).isEqualTo(0);

    memberID.setUUID(new UUID(1234L, 5678L));
    memberID.setVersionForTest(KnownVersion.CURRENT);
    clientID = ClientProxyMembershipID.getClientId(memberID);
    out = new HeapDataOutputStream(KnownVersion.CURRENT);
    DataSerializer.writeObject(clientID, out);

    in = new VersionedDataInputStream(new ByteArrayInputStream(out.toByteArray()),
        KnownVersion.CURRENT);
    newID = DataSerializer.readObject(in);
    newMemberID = (InternalDistributedMember) newID.getDistributedMember();
    assertThat(newMemberID.getVersion()).isEqualTo(KnownVersion.CURRENT);
    assertThat(newID.getClientVersion()).isEqualTo(KnownVersion.CURRENT);

    assertThat(newMemberID.getUuidLeastSignificantBits())
        .isEqualTo(memberID.getUuidLeastSignificantBits());
    assertThat(newMemberID.getUuidMostSignificantBits())
        .isEqualTo(memberID.getUuidMostSignificantBits());
  }
Make sure if we have more than one pool that we do not have a default
geode-core/src/integrationTest/java/org/apache/geode/cache/client/ClientCacheFactoryJUnitTest.java