@Override
      public Object call() {
        TXManagerImpl mgr = getCache().getTxManager();
        PartitionedRegion pr = (PartitionedRegion) getCache().getRegion(CUSTOMER);
        mgr.begin();
        Set filter = new HashSet();
        filter.add(expectedCustId);
        FunctionService.onRegion(pr).withFilter(filter).execute(new NestedTxFunction()).getResult();
        assertThat(getCache().getTxManager().getTXState()).isNotNull();
        mgr.commit();
        assertThat(expectedCustomer).isEqualTo(pr.get(expectedCustId));
        return null;
      }
When we have narrowed down on a target node for a transaction, test that we throw an exception
if that node does not host primary for subsequent entries
geode-core/src/distributedTest/java/org/apache/geode/internal/cache/RemoteTransactionDUnitTest.java