@Test
  public void testDeltaPropagationReplicatedRegionPeerWithDeltaException() throws Exception {
    // server 1 with empty data policy
    int port1 = dataStore1.invoke(() -> createServerCache(false, true));

    // server 2 with non empty data policy
    dataStore2.invoke(() -> createServerCache(true, false));

    createClientCache(port1, false, false, false);

    // feed delta
    DeltaTestImpl test = new DeltaTestImpl();
    deltaPR.put(DELTA_KEY, test);

    test.setIntVar(10);
    deltaPR.put(DELTA_KEY, test);

    // perform invalidate on accessor
    dataStore2.invoke(this::invalidateDeltaKey);

    test = new DeltaTestImpl();
    test.setStr("DELTA");
    deltaPR.put(DELTA_KEY, test);

    deltaPR.put(LAST_KEY, "");

    dataStore2.invoke(this::waitForLastKey);
    // check and reset isFailed flag
    dataStore2.invoke(this::checkIsFailed);

    dataStore2.invoke(() -> fromDeltaCounter(1));
  }
1) Put delta objects on client feeder connected accessor cache server. 2) From accessor to
data store delta gets propagated as part of <code>UpdateMessage</code> delta. 3) Exception
occurs when applying delta on datastore node. This invalid delta exception propagated back to
client through accessor. 4) Client sends full object in response.
geode-cq/src/distributedTest/java/org/apache/geode/internal/cache/PRDeltaPropagationDistributedTest.java