/** * For test purposes, see if two RVVs have seen the same events and GC version vectors * * @return true if the RVVs are the same. */ public boolean sameAs(RegionVersionVector<T> other) { // Compare the version version vectors Map<T, RegionVersionHolder<T>> myMemberToVersion = getMemberToVersion(); Map<T, RegionVersionHolder<T>> otherMemberToVersion = other.getMemberToVersion(); if (!myMemberToVersion.keySet().equals(otherMemberToVersion.keySet())) { return false; } for (Iterator<T> it = myMemberToVersion.keySet().iterator(); it.hasNext();) { T key = it.next(); if (!myMemberToVersion.get(key).sameAs(otherMemberToVersion.get(key))) { return false; } } Map<T, Long> myGCVersion = getMemberToGCVersion(); Map<T, Long> otherGCVersion = other.getMemberToGCVersion(); if (!myGCVersion.equals(otherGCVersion)) { return false; } return true; }
for (Map.Entry<T, Long> entry : otherVector.getMemberToGCVersion().entrySet()) { T member = entry.getKey(); Long value = entry.getValue();
Map<VersionSource, Long> memberToVersion = rvv.getMemberToGCVersion(); InternalDataSerializer.writeUnsignedVL(memberToVersion.size(), out); for (Entry<VersionSource, Long> memberEntry : memberToVersion.entrySet()) {
Map<VersionSource, Long> gcVersions = null; if (this.last && rgn.getVersionVector() != null) { gcVersions = rgn.getVersionVector().getMemberToGCVersion();
for (VersionSource member : (Collection<VersionSource>) inMemoryRVV.getMemberToGCVersion() .keySet()) { updateDiskGCRVV(diskRVV, inMemoryRVV, member);
"version vector reports that I have nothing that the requester hasn't already seen"); replyNoData(dm, true, rgn.getVersionVector().getMemberToGCVersion()); sendFailureMessage = false; return;