protected void sendReply(InternalDistributedMember member, int procId, DistributionManager dm,
      ReplyException ex, PartitionedRegion pr, long startTime, EntryEventImpl ev) {
    if (pr != null && startTime > 0) {
      pr.getPrStats().endPartitionMessagesProcessing(startTime);
      pr.getCancelCriterion().checkCancelInProgress(null); // bug 39014 - don't send a positive
                                                           // response if we may have failed
    }
    PutReplyMessage.send(member, procId, getReplySender(dm), result, getOperation(), ex, this, ev);
  }
This method is called upon receipt and make the desired changes to the PartitionedRegion Note:
It is very important that this message does NOT cause any deadlocks as the sender will wait
indefinitely for the acknowledgement
geode-core/src/main/java/org/apache/geode/internal/cache/partitioned/PutMessage.java