gesterzhou commented on a change in pull request #6093:
URL: https://github.com/apache/geode/pull/6093#discussion_r595357590
##########
File path:
geode-core/src/main/java/org/apache/geode/internal/cache/persistence/PersistenceAdvisorImpl.java
##########
@@ -533,7 +533,12 @@ public boolean
checkMyStateOnMembers(Set<InternalDistributedMember> replicates)
String message = String.format(
"Region %s remote member %s with persistent data %s was not part
of the same distributed system as the local data from %s",
regionPath, member, remoteId, myId);
- throw new ConflictingPersistentDataException(message);
+ replicates.remove(member);
Review comment:
The replicates are supposed to be adjusted here. We should not create a
copy.
the whole method is to remove some of the entries from the replicates. It
will remove the EQUAL ones, and offline ones, then I add the logic to remove
the ones who don't know me. That means I will not GII from all these removed
replicates as candidates.
If the method removed all the replicates by other cases (such as EQUAL or
offline), then I will recover from my own disk.
As long as there's one entry in replicates, will request GII from it.
If the last replicate is removed by this use case, should throw exception.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]