He’s talking about multiple writers. Given a reasonable session timeout, even a 
GC shouldn’t matter. If the GC causes a heartbeat miss the client will get 
SysDisconnected.

-Jordan



On July 15, 2015 at 2:05:41 PM, Camille Fournier ([email protected]) wrote:

If client a does a full gc immediately before sending a message that is  
long enough to lose the lock, it will send the message out of order. You  
cannot guarantee exclusive access without verification at the locked  
resource.  

C  
On Jul 15, 2015 3:02 PM, "Jordan Zimmerman" <[email protected]>  
wrote:  

> I don’t see how there’s a chance of multiple writers. Assuming a  
> reasonable session timeout:  
>  
> * Client A gets the lock  
> * Client B watches Client A’s lock node  
> * Client A gets a network partition  
> * Client A will get a SysDisconnected before the session times out  
> * Client A must immediately assume it no longer has the lock  
> * Client A’s session times out  
> * Client A’s ephemeral node is deleted  
> * Client B’s watch fires  
> * Client B takes the lock  
> * Client A reconnects and gets SESSION_EXPIRED  
>  
> Where’s the problem? This is how everyone uses ZooKeeper. There is 0  
> chance of multiple writers in this scenario.  
>  
>  
>  
> On July 15, 2015 at 1:56:37 PM, Vikas Mehta ([email protected]) wrote:  
>  
> Camille, I don't have a central message store/processor that can guarantee  
> single writer (if I had one, it would reduce (still useful in reducing lock  
> contention, etc) the need/value of using zookeeper) and hence I am trying  
> to  
> minimize the chances of multiple writers (more or less trying to guarantee  
> this) while maximizing availability (not trying to solve CAP theorem), by  
> solving some specific issues that affect availability.  
>  
>  
>  
> --  
> View this message in context:  
> http://zookeeper-user.578899.n2.nabble.com/locking-leader-election-and-dealing-with-session-loss-tp7581277p7581284.html
>   
> Sent from the zookeeper-user mailing list archive at Nabble.com.  
>  

Reply via email to