Details
-
Type:
Bug
-
Status: Closed
-
Priority:
Critical
-
Resolution: Fixed
-
Affects Version/s: 3.3.1
-
Component/s: c client, contrib-bindings
-
Labels:None
-
Hadoop Flags:Reviewed
Description
the c-client / zkpython wrapper invokes already freed watcher callback
steps to reproduce:
0. start a zookeper server on your machine
1. run the attached python script
2. suspend the zookeeper server process (e.g. using `pkill -STOP -f org.apache.zookeeper.server.quorum.QuorumPeerMain` )
3. wait until the connection and the node observer fired with a session event
4. resume the zookeeper server process (e.g. using `pkill -CONT -f org.apache.zookeeper.server.quorum.QuorumPeerMain` )
-> the client tries to dispatch the node observer function again, but it was already freed -> double free corruption
Attachments
Issue Links
- duplicates
-
ZOOKEEPER-740 zkpython leading to segfault on zookeeper
-
- Resolved
-
- is duplicated by
-
ZOOKEEPER-890 C client invokes watcher callbacks multiple times
-
- Resolved
-