symat opened a new pull request, #1850:
URL: https://github.com/apache/zookeeper/pull/1850

   When packets are added to ClientCnxn's outgoing packet queue we ensure 
there's no conflict with an ongoing flush of that queue because of connection 
loss.
   
   Synchronization used to be on the state field's value. This value is both 
not stable (its value changes over time), possibly causing improper 
synchronization, and global, which can cause contention in applications that 
run several ZooKeeper clients.
   
   We now synchronize on outgoingQueue which is both local to a ClientCnxn's 
instance and stable.
   
   Author: Sylvain Wallez <[email protected]>
   
   Reviewers: maoling <[email protected]>, Mohammad Arshad <[email protected]>
   
   Closes #1257 from swallez/ZOOKEEPER-3652 and squashes the following commits:
   
   82e2cad2c [Sylvain Wallez] Instruct SpotBugs that we know what we're doing 
when synchronizing on outgoingQueue
   b0bc03d6f [Sylvain Wallez] ZOOKEEPER-3652: Synchronize ClientCnxn outgoing 
queue flush on a stable internal value
   
   (cherry picked from commit 91e0520133b82acb87ab60962fce5eae992d87e8)


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

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to