@Test
  public void bothClustersDefineTypeAndClientPutsInBothClusters() {

    ClientCache client = createScenario();

    Region regionA = client.getRegion("regionA");
    Region regionB = client.getRegion("regionB");

    createType(serverA, "regionA");
    createType(serverB, "regionB");

    // Put from the client into both servers (this will fetch the type from one of them)
    regionA.put("key", new SimpleClass(5, (byte) 6));
    regionB.put("key", new SimpleClass(5, (byte) 6));

    // Make sure both servers can deserialize the type
    serverB.invoke(() -> assertEquals(new SimpleClass(5, (byte) 6),
        getCache().getRegion("regionB").get("key")));
    serverA.invoke(() -> assertEquals(new SimpleClass(5, (byte) 6),
        getCache().getRegion("regionA").get("key")));
  }
See what happens if both clusters have independently defined a type, and then
a client does a put in both clusters.

It will get the type from one of the clusters, so the question is if it can be deserialized
in both
geode-core/src/distributedTest/java/org/apache/geode/pdx/PdxMultiClusterClientServerDUnitTest.java