@Override
    public void process(DistributionMessage msg) {
      try {
        if (msg instanceof SizeReplyMessage) {
          SizeReplyMessage reply = (SizeReplyMessage) msg;
          synchronized (returnValue) {
            for (Map.Entry<Integer, SizeEntry> me : reply.getBucketSizes().entrySet()) {
              Integer k = me.getKey();
              if (!returnValue.containsKey(k) || !returnValue.get(k).isPrimary()) {
                returnValue.put(k, me.getValue());
              }
            }
          }
        }
      } finally {
        super.process(msg);
      }
    }
The SizeResponse processor ignores remote exceptions by implmenting this method. Ignoring
remote exceptions is acceptable since the SizeMessage is sent to all Nodes and all
{@link SizeMessage.SizeReplyMessage}s are processed for each individual bucket size. The hope
is that any failure due to an exception will be covered by healthy Nodes.
geode-core/src/main/java/org/apache/geode/internal/cache/partitioned/SizeMessage.java