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.