micro-fan / aiozk

Asyncio client for zookeeper
MIT License
49 stars 20 forks source link

Fix deadlock incurred by lock acquisition failure #48

Closed rhdxmr closed 4 years ago

rhdxmr commented 4 years ago

A znode of Zookeeper related to a lock becomes untracked if session suspension occurs while acquiring a lock.

By this patch, TimeoutError raised at .analyze_siblings() is handled properly and make the lock acquisition procedure keep going until timeout is reached.

rhdxmr commented 4 years ago

Long time no see, @cybergrind Can you review my PR? And please check why docker-compose build failed. It seems that downloading zookeeper by curl has some problem.

rhdxmr commented 4 years ago

@cybergrind I also sent PR#49 to solve docker build failure.

cybergrind commented 4 years ago

@rhdxmr merged fix for docker, will check PR soon.

rhdxmr commented 4 years ago

@cybergrind Is there a way to obviate CI build failure by running the build task again?

cybergrind commented 4 years ago

@rhdxmr hey, could you please rebase it to pass tests. In general looks fine by me, will release a new version after merge

rhdxmr commented 4 years ago

@cybergrind rebased commits are pushed just now.

cybergrind commented 4 years ago

@rhdxmr thank you! Released as 0.21.0