bschuchardt commented on a change in pull request #6037:
URL: https://github.com/apache/geode/pull/6037#discussion_r582353294



##########
File path: 
geode-membership/src/main/java/org/apache/geode/distributed/internal/membership/gms/GMSMembership.java
##########
@@ -1231,23 +1197,16 @@ public void shutdownMessageReceived(ID id, String 
reason) {
     if (logger.isDebugEnabled()) {
       logger.debug("Membership: recording shutdown status of {}", id);
     }
-    synchronized (this.shutdownMembers) {
-      this.shutdownMembers.put(id, id);
-      services.getHealthMonitor()
-          .memberShutdown(id, reason);
-      services.getJoinLeave().memberShutdown(id, reason);
-    }
+    this.shutdownMembers.add(id);
+    services.getJoinLeave().memberShutdown(id, reason);

Review comment:
       @pivotal-jbarrett shutdownMembers and memberShutdown are not required to 
be in sync.  The memberShutdown invocation informs GMSJoinLeave so it can 
record a LeaveRequest in case this is the membership coordinator or that it 
should become one.
   The latestViewLock is for protecting the data used in processView() from 
being altered while a new view is being prepared.  The shutdownMembers field 
isn't used in processView() and so doesn't need to be protected by this lock.




----------------------------------------------------------------
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]


Reply via email to