AdvisorListener.memberDeparted() is invoked from paths other than membership 
view changes, such as when a Region is destroyed.   A member may still be in 
the cluster (membership view) after AdvisorListener.memberDeparted() has been 
invoked.

If isCurrentMember() returns true then the server is still a member.  It may be 
in the process of being removed but until a new view is installed it's a valid 
member.

Across the cluster there can also be a lag between one server knowing about a 
departure and another server knowing about it.  If you send a message during 
that interval that depends on the departure being known everywhere you can use 
the WaitForViewInstallation message.


On 4/17/20, 3:03 PM, "Anilkumar Gingade" <aging...@pivotal.io> wrote:

    Is there a better way to know if a member has left the distributed system,
    than following:
    I am checking using:
    "partitionedRegion.getDistributionManager().isCurrentMember(requester));"
    
    This returns true, even though the AdvisorListener on
    ParitionedRegion already processed memberDeparted() event.
    
    I want to know if a member has left after invoking the membershipListener.
    
    -Anil.
    


Reply via email to