I think it's worth describing why we first go remotely and then locally as I think people might wonder why we do it. Let me see if I got it right: "
- during state transfer it is possible for an entry to map to the local node, but not have been brought locally yet. So during state transfer we fetch the value remotely first. If the value exists remotely then this is the actual value and we don't look into the data container for it. Otherwise (remote value is null) we look into the data container as well in order to cover the situation when state transfer finished in between the "isStateTransferInProgress" and "remoteGet".