zookeeper-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jeremy Stribling <st...@nicira.com>
Subject hang in zookeeper_close() in the mt C client
Date Sat, 29 Jan 2011 19:23:18 GMT
Hi everyone,

I use the multithreaded ZK C client library (3.3.2), and I'm seeing my 
application hang, and the only thread in it that's doing anything 
interesting is this one:

Thread 8 (Thread 5644):
#0  0x00007f5d7bb5bbe4 in __lll_lock_wait () from /lib/libpthread.so.0
#1  0x00007f5d7bb59ad0 in pthread_cond_broadcast@@GLIBC_2.3.2 () from 
/lib/libpthread.so.0
#2  0x00007f5d793628f6 in unlock_completion_list (l=0x32b4d68) at 
.../zookeeper/src/c/src/mt_adaptor.c:66
#3  0x00007f5d79354d4b in free_completions (zh=0x32b4c80, 
callCompletion=1, reason=-116) at .../zookeeper/src/c/src/zookeeper.c:1069
#4  0x00007f5d79355008 in cleanup_bufs (zh=0x32b4c80, callCompletion=1, 
rc=-116) at .../thirdparty/zookeeper/src/c/src/zookeeper.c:1125
#5  0x00007f5d79353200 in destroy (zh=0x32b4c80) at 
.../thirdparty/zookeeper/src/c/src/zookeeper.c:366
#6  0x00007f5d79358e0e in zookeeper_close (zh=0x32b4c80) at 
.../zookeeper/src/c/src/zookeeper.c:2326
#7  0x00007f5d79356d18 in api_epilog (zh=0x32b4c80, rc=0) at 
.../zookeeper/src/c/src/zookeeper.c:1661
#8  0x00007f5d79362f2f in adaptor_finish (zh=0x32b4c80) at 
.../zookeeper/src/c/src/mt_adaptor.c:205
#9  0x00007f5d79358c8c in zookeeper_close (zh=0x32b4c80) at 
.../zookeeper/src/c/src/zookeeper.c:2297
....

I've seen some threads online about how there's a race condition 
associated with zookeeper_close, where if you app is making a 
synchronous call at the same time using the closed zk_handle, there 
could be a hang.  However, my app makes no synchronous calls, and I'm 
99% sure that no other thread in my app is making any concurrent call 
into the library ('thread apply all bt' in gdb doesn't show any other 
usage of the library, anyway).

Has anyone seen this before?  Any leads?  Thanks,

Jeremy

Mime
View raw message