if (!cache.isDestroyed(targetChild.getKey())) {
// the target child exists but is under a different path in the source than the target
// so we need to remove it from its parent in the target to avoid the case when later on, it might be
// destroyed
MutableCachedNode targetChildParent = cache.mutable(targetChild.getParentKey(cache));
targetChildParent.removeChild(cache, targetChild.getKey());
}
resolvedChild = resolveSourceNode(sourceChild, checkinTime, cache);
} else {
// Pull the resolved node
resolvedChild = inSourceOnly.get(sourceChild);