How to capture the watch event generated by zoo_aexists?
Hi, In order to check the existence of a node in zookeeper, the api provides two functions. Namely zoo_aexists and zoo_awexists. zoo_awexists function provides the ability to inject and watcher object through it's arguments and we can capture the watch event through that object. - ZOOAPI int zoo_awexists( zhandle_t * zh, const char * path, watcher_fn watcher, void * watcherCtx, stat_completion_t completion, const void * data ) But zoo_aexists does not provide that kind of argument. It is only gives us the ability to specify whether it need to be watched or not. - ZOOAPI int zoo_aexists( zhandle_t * zh, const char * path, int watch, stat_completion_t completion, const void * data ) The zookeeper documentation says that, watch if nonzero, a watch will be set at the server to notify the client if the node changes. The watch will be set even if the node does not exist. This allows clients to watch for nodes to appear. My questions is when we using zoo_aexists in an application, how and what would be the best way to capture the watch event generated by zoo_aexists. Thanks Tharindu
Zookeeper Heartbeat procedure
Hi, I want to clarify few concepts in Zookeeper. 1. What is the the timeout between sending a PING messages from LEADER to FOLLOWER? Is it equal to half of tickTime? 2. What is reconnection timeout with respect to clients? Is it equal to (session expiration time / total zookeeper servers)? 3. How a FOLLOWER determines that the current LEADER is down or not? Is it through a Heartbeat expiry? From tests it looks like that as soon as LEADER is down, an exception is fired in every FOLLOWER by failing to read an interger(length of the message) Thanks
[jira] [Updated] (ZOOKEEPER-2715) Sessions Expire due to Network partitioning in Zookeeper
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2715?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tharindu Kumara updated ZOOKEEPER-2715: --- Description: Recently, carried out a test to to find the behavior of clients when a zookeeper server is isolated from the zookeeper leader. Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was set up like below. A - Follower B - Leader C - Follower A <==> B <==> C II And 3 clients are connected to ensemble like below. C1 is connected A. Both C1 and A are in the same machine. C2 is connected B. Both C2 and B are in the same machine. C3 is connected C. Both C3 and C are in the same machine. To remove the network link between B and C iptables utility is used. command used: iptables -I INPUT -s Server_B_IP -j DROP iptables -I INPUT -s Server_C_IP -j DROP After removing the link connections looks like below. A <===> B C II Simply there is no way to send any packets from zookeeper server B to zookeeper server C and vice versa. But the connection exists between between B and C. And also there is no way to send any packets from B to C3 and vice versa. But the connection exists between between B and C3. Here What I noticed is that the client connected to Zookeeper Server "C", could not connect to the ensemble, resulting a session expiration timeout. For this experiment I used tickTime of 3000ms and client session expiration timeout of 45000ms. And tested with different combinations also. was: Recently, carried out a test to to find the behavior of clients when a zookeeper server is isolated from the zookeeper leader. Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was set up like below. A - Follower B - Leader C - Follower A <==> B <==> C II And 3 clients are connected to ensemble like below. C1 is connected A. Both C1 and A are in the same machine. C2 is connected B. Both C2 and B are in the same machine. C3 is connected C. Both C3 and C are in the same machine. To remove the network link between B and C iptables utility is used. command used: iptables -I INPUT -s Server_B_IP -j DROP iptables -I INPUT -s Server_C_IP -j DROP After removing the link connections looks like below. A <===> B C II Simply there is no way to send any packets from B to C and vice versa. But the connection exists between between B and C. And also there is no way to send any packets from B to C3 and vice versa. But the connection exists between between B and C3. Here What I noticed is that the client connected to Zookeeper Server "C", could not connect to the ensemble, resulting a session expiration timeout. For this experiment I used tickTime of 3000ms and client session expiration timeout of 45000ms. And tested with different combinations also. > Sessions Expire due to Network partitioning in Zookeeper > - > > Key: ZOOKEEPER-2715 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2715 > Project: ZooKeeper > Issue Type: Bug > Components: c client >Affects Versions: 3.4.9 >Reporter: Tharindu Kumara > > Recently, carried out a test to to find the behavior of clients when a > zookeeper server is isolated from the zookeeper leader. > Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was > set up like below. > A - Follower > B - Leader > C - Follower > A <==> B <==> C > II > And 3 clients are connected to ensemble like below. > C1 is connected A. Both C1 and A are in the same machine. > C2 is connected B. Both C2 and B are in the same machine. > C3 is connected C. Both C3 and C are in the same machine. > To remove the network link between B and C iptables utility is used. > command used: > iptables -I INPUT -s Server_B_IP -j DROP > iptables -I INPUT -s Server_C_IP -j DROP > After removing the link connections looks like below. > A <===> B C > II > Simply there is no way to send any packets from zookeeper server B to > zookeeper server C and vice versa. But the connection exists between between > B and C. And also there is no way to send any packets from B to C3 and vice > versa. But the connection exists between between B and C3. > Here What I noticed is that the client connected to Zookeeper Server "C", > could not connect to the ensemble, resulting a session expiration timeout. > For this experiment I used tickTime of 3000ms and client session expiration > timeout of 45000ms. And tested with different combinations also. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (ZOOKEEPER-2715) Sessions Expire due to Network partitioning in Zookeeper
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2715?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tharindu Kumara updated ZOOKEEPER-2715: --- Description: Recently, carried out a test to to find the behavior of clients when a zookeeper server is isolated from the zookeeper leader. Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was set up like below. A - Follower B - Leader C - Follower A <==> B <==> C II And 3 clients are connected to ensemble like below. C1 is connected A. Both C1 and A are in the same machine. C2 is connected B. Both C2 and B are in the same machine. C3 is connected C. Both C3 and C are in the same machine. To remove the network link between B and C iptables utility is used. command used: iptables -I INPUT -s Server_B_IP -j DROP iptables -I INPUT -s Server_C_IP -j DROP After removing the link connections looks like below. A <===> B C II Simply there is no way to send any packets from B to C and vice versa. But the connection exists between between B and C. And also there is no way to send any packets from B to C3 and vice versa. But the connection exists between between B and C3. Here What I noticed is that the client connected to Zookeeper Server "C", could not connect to the ensemble, resulting a session expiration timeout. For this experiment I used tickTime of 3000ms and client session expiration timeout of 45000ms. And tested with different combinations also. was: Recently, carried out a test to to find the behavior of clients when a zookeeper server is isolated from the zookeeper leader. Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was set up like below. A - Follower B - Leader C - Follower A <==> B <==> C II And 3 clients are connected to ensemble like below. C1 is connected A. C2 is connected B C3 is connected C. To remove the network link between B and C iptables utility is used. command used: iptables -I INPUT -s Server_B_IP -j DROP iptables -I INPUT -s Server_C_IP -j DROP After removing the link connections looks like below. A <===> B C II Simply there is no way to send any packets from B to C and vice versa. But the connection exists between between B and C. Here What I noticed is that the client connected to Zookeeper Server "C", could not connect to the ensemble resulting a session expiration timeout. For this experiment I used tickTime of 3000ms and client session expiration timeout of 45000ms. And tested with different combinations also. > Sessions Expire due to Network partitioning in Zookeeper > - > > Key: ZOOKEEPER-2715 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2715 > Project: ZooKeeper > Issue Type: Bug > Components: c client >Affects Versions: 3.4.9 >Reporter: Tharindu Kumara > > Recently, carried out a test to to find the behavior of clients when a > zookeeper server is isolated from the zookeeper leader. > Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was > set up like below. > A - Follower > B - Leader > C - Follower > A <==> B <==> C > II > And 3 clients are connected to ensemble like below. > C1 is connected A. Both C1 and A are in the same machine. > C2 is connected B. Both C2 and B are in the same machine. > C3 is connected C. Both C3 and C are in the same machine. > To remove the network link between B and C iptables utility is used. > command used: > iptables -I INPUT -s Server_B_IP -j DROP > iptables -I INPUT -s Server_C_IP -j DROP > After removing the link connections looks like below. > A <===> B C > II > Simply there is no way to send any packets from B to C and vice versa. But > the connection exists between between B and C. And also there is no way to > send any packets from B to C3 and vice versa. But the connection exists > between between B and C3. > Here What I noticed is that the client connected to Zookeeper Server "C", > could not connect to the ensemble, resulting a session expiration timeout. > For this experiment I used tickTime of 3000ms and client session expiration > timeout of 45000ms. And tested with different combinations also. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (ZOOKEEPER-2715) Sessions Expire due to Network partitioning in Zookeeper
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2715?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tharindu Kumara updated ZOOKEEPER-2715: --- Description: Recently, carried out a test to to find the behavior of clients when a zookeeper server is isolated from the zookeeper leader. Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was set up like below. A - Follower B - Leader C - Follower A <==> B <==> C II And 3 clients are connected to ensemble like below. C1 is connected A. C2 is connected B C3 is connected C. To remove the network link between B and C iptables utility is used. command used: iptables -I INPUT -s Server_B_IP -j DROP iptables -I INPUT -s Server_C_IP -j DROP After removing the link connections looks like below. A <===> B C II Simply there is no way to send any packets from B to C and vice versa. But the connection exists between between B and C. Here What I noticed is that the client connected to Zookeeper Server "C", could not connect to the ensemble resulting a session expiration timeout. For this experiment I used tickTime of 3000ms and client session expiration timeout of 45000ms. And tested with different combinations also. was: Recently, carried out a test to to find the behavior of clients when a client is partitioned from the ensemble. Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was set up like below. A - Follower B - Leader C - Follower A <==> B <==> C II And 3 clients are connected to ensemble like below. C1 is connected A C2 is connected B C3 is connected C. To remove the network link between B and C iptables utility is used. command used: iptables -I INPUT -s Server_B_IP -j DROP iptables -I INPUT -s Server_C_IP -j DROP After removing the link connections looks like below. A <===> B C II Simply there is no way to send any packets from from B to C and vice versa. But the connection exists between between B and C. Here What I noticed is that the client connected to Zookeeper Server "C", could not connect to the ensemble resulting a session expiration timeout. For this experiment I used tickTime of 3000ms and client session expiration timeout of 45000ms. And tested with different combinations also. > Sessions Expire due to Network partitioning in Zookeeper > - > > Key: ZOOKEEPER-2715 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2715 > Project: ZooKeeper > Issue Type: Bug > Components: c client >Affects Versions: 3.4.9 >Reporter: Tharindu Kumara > > Recently, carried out a test to to find the behavior of clients when a > zookeeper server is isolated from the zookeeper leader. > Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was > set up like below. > A - Follower > B - Leader > C - Follower > A <==> B <==> C > II > And 3 clients are connected to ensemble like below. > C1 is connected A. > C2 is connected B > C3 is connected C. > To remove the network link between B and C iptables utility is used. > command used: > iptables -I INPUT -s Server_B_IP -j DROP > iptables -I INPUT -s Server_C_IP -j DROP > After removing the link connections looks like below. > A <===> B C > II > Simply there is no way to send any packets from B to C and vice versa. But > the connection exists between between B and C. > Here What I noticed is that the client connected to Zookeeper Server "C", > could not connect to the ensemble resulting a session expiration timeout. > For this experiment I used tickTime of 3000ms and client session expiration > timeout of 45000ms. And tested with different combinations also. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (ZOOKEEPER-2715) Sessions Expire due to Network partitioning in Zookeeper
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2715?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tharindu Kumara updated ZOOKEEPER-2715: --- Description: Recently, carried out a test to to find the behavior of clients when a client is partitioned from the ensemble. Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was set up like below. A - Follower B - Leader C - Follower A <==> B <==> C II And 3 clients are connected to ensemble like below. C1 is connected A C2 is connected B C3 is connected C. To remove the network link between B and C iptables utility is used. command used: iptables -I INPUT -s Server_B_IP -j DROP iptables -I INPUT -s Server_C_IP -j DROP After removing the link connections looks like below. A <===> B C II Simply there is no way to send any packets from from B to C and vice versa. But the connection exists between between B and C. Here What I noticed is that the client connected to Zookeeper Server "C", could not connect to the ensemble resulting a session expiration timeout. For this experiment I used tickTime of 3000ms and client session expiration timeout of 45000ms. And tested with different combinations also. was: Recently, carried out a test to to find the behavior of clients when a client is partitioned from the ensemble. Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was set up like below. A - Follower B - Leader C - Follower A <==> B <==> C II And 3 clients are connected to ensemble like below. C1 is connected A C2 is connected B C3 is connected C. To remove the network link between B and C iptables utility is used. command used: iptables -I INPUT -s Server_B_IP -j DROP iptables -I INPUT -s Server_C_IP -j DROP After removing the link connections looks like below. A <> B C II Simply there is no way to send any packets from from B to C and vice versa. But the connection exists between between B and C. Here What I noticed is that the client connected to Zookeeper Server "C", could not connect to the ensemble resulting a session expiration timeout. For this experiment I used tickTime of 3000ms and client session expiration timeout of 45000ms. And tested with different combinations also. > Sessions Expire due to Network partitioning in Zookeeper > - > > Key: ZOOKEEPER-2715 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2715 > Project: ZooKeeper > Issue Type: Bug > Components: c client >Affects Versions: 3.4.9 >Reporter: Tharindu Kumara > > Recently, carried out a test to to find the behavior of clients when a > client is partitioned from the ensemble. > Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was > set up like below. > A - Follower > B - Leader > C - Follower > A <==> B <==> C > II > And 3 clients are connected to ensemble like below. > C1 is connected A > C2 is connected B > C3 is connected C. > To remove the network link between B and C iptables utility is used. > command used: > iptables -I INPUT -s Server_B_IP -j DROP > iptables -I INPUT -s Server_C_IP -j DROP > After removing the link connections looks like below. > A <===> B C > II > Simply there is no way to send any packets from from B to C and vice versa. > But the connection exists between between B and C. > Here What I noticed is that the client connected to Zookeeper Server "C", > could not connect to the ensemble resulting a session expiration timeout. > For this experiment I used tickTime of 3000ms and client session expiration > timeout of 45000ms. And tested with different combinations also. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (ZOOKEEPER-2715) Sessions Expire due to Network partitioning in Zookeeper
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2715?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tharindu Kumara updated ZOOKEEPER-2715: --- Description: Recently, carried out a test to to find the behavior of clients when a client is partitioned from the ensemble. Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was set up like below. A - Follower B - Leader C - Follower A <==> B <==> C II And 3 clients are connected to ensemble like below. C1 is connected A C2 is connected B C3 is connected C. To remove the network link between B and C iptables utility is used. command used: iptables -I INPUT -s Server_B_IP -j DROP iptables -I INPUT -s Server_C_IP -j DROP After removing the link connections looks like below. A <===> B C II Simply there is no way to send any packets from from B to C and vice versa. But the connection exists between between B and C. Here What I noticed is that the client connected to Zookeeper Server "C", could not connect to the ensemble resulting a session expiration timeout. For this experiment I used tickTime of 3000ms and client session expiration timeout of 45000ms. And tested with different combinations also. was: Recently, carried out a test to to find the behavior of clients when a client is partitioned from the ensemble. Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was set up like below. A - Follower B - Leader C - Follower A <==> B <==> C II And 3 clients are connected to ensemble like below. C1 is connected A C2 is connected B C3 is connected C. To remove the network link between B and C iptables utility is used. command used: iptables -I INPUT -s Server_B_IP -j DROP iptables -I INPUT -s Server_C_IP -j DROP After removing the link connections looks like below. A <===> B C II Simply there is no way to send any packets from from B to C and vice versa. But the connection exists between between B and C. Here What I noticed is that the client connected to Zookeeper Server "C", could not connect to the ensemble resulting a session expiration timeout. For this experiment I used tickTime of 3000ms and client session expiration timeout of 45000ms. And tested with different combinations also. > Sessions Expire due to Network partitioning in Zookeeper > - > > Key: ZOOKEEPER-2715 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2715 > Project: ZooKeeper > Issue Type: Bug > Components: c client >Affects Versions: 3.4.9 >Reporter: Tharindu Kumara > > Recently, carried out a test to to find the behavior of clients when a > client is partitioned from the ensemble. > Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was > set up like below. > A - Follower > B - Leader > C - Follower > A <==> B <==> C > II > And 3 clients are connected to ensemble like below. > C1 is connected A > C2 is connected B > C3 is connected C. > To remove the network link between B and C iptables utility is used. > command used: > iptables -I INPUT -s Server_B_IP -j DROP > iptables -I INPUT -s Server_C_IP -j DROP > After removing the link connections looks like below. > A <===> B C > II > Simply there is no way to send any packets from from B to C and vice versa. > But the connection exists between between B and C. > Here What I noticed is that the client connected to Zookeeper Server "C", > could not connect to the ensemble resulting a session expiration timeout. > For this experiment I used tickTime of 3000ms and client session expiration > timeout of 45000ms. And tested with different combinations also. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (ZOOKEEPER-2715) Sessions Expire due to Network partitioning in Zookeeper
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2715?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tharindu Kumara updated ZOOKEEPER-2715: --- Description: Recently, carried out a test to to find the behavior of clients when a client is partitioned from the ensemble. Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was set up like below. A - Follower B - Leader C - Follower A <==> B <==> C II And 3 clients are connected to ensemble like below. C1 is connected A C2 is connected B C3 is connected C. To remove the network link between B and C iptables utility is used. command used: iptables -I INPUT -s Server_B_IP -j DROP iptables -I INPUT -s Server_C_IP -j DROP After removing the link connections looks like below. A <===> B C II Simply there is no way to send any packets from from B to C and vice versa. But the connection exists between between B and C. Here What I noticed is that the client connected to Zookeeper Server "C", could not connect to the ensemble resulting a session expiration timeout. For this experiment I used tickTime of 3000ms and client session expiration timeout of 45000ms. And tested with different combinations also. was: Recently, carried out a test to to find the behavior of clients when a client is partitioned from the ensemble. Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was set up like below. A - Follower B - Leader C - Follower A <==> B <==> C II And 3 clients are connected to ensemble like below. C1 is connected A C2 is connected B C3 is connected C. To remove the network link between B and C iptables utility is used. command used: iptables -I INPUT -s Server_B_IP -j DROP iptables -I INPUT -s Server_C_IP -j DROP After removing the link connections looks like below. A <===> B C II Simply there is no way to send any packets from from B to C and vice versa. But the connection exists between between B and C. Here What I noticed is that the client connected to Zookeeper Server "C", could not connect to the ensemble resulting a session expiration timeout. For this experiment I used tickTime of 3000ms and client session expiration timeout of 45000ms. And tested with different combinations also. > Sessions Expire due to Network partitioning in Zookeeper > - > > Key: ZOOKEEPER-2715 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2715 > Project: ZooKeeper > Issue Type: Bug > Components: c client >Affects Versions: 3.4.9 >Reporter: Tharindu Kumara > > Recently, carried out a test to to find the behavior of clients when a > client is partitioned from the ensemble. > Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was > set up like below. > A - Follower > B - Leader > C - Follower > A <==> B <==> C > II > And 3 clients are connected to ensemble like below. > C1 is connected A > C2 is connected B > C3 is connected C. > To remove the network link between B and C iptables utility is used. > command used: > iptables -I INPUT -s Server_B_IP -j DROP > iptables -I INPUT -s Server_C_IP -j DROP > After removing the link connections looks like below. > A <===> B C > II > Simply there is no way to send any packets from from B to C and vice versa. > But the connection exists between between B and C. > Here What I noticed is that the client connected to Zookeeper Server "C", > could not connect to the ensemble resulting a session expiration timeout. > For this experiment I used tickTime of 3000ms and client session expiration > timeout of 45000ms. And tested with different combinations also. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (ZOOKEEPER-2715) Sessions Expire due to Network partitioning in Zookeeper
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2715?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tharindu Kumara updated ZOOKEEPER-2715: --- Description: Recently, carried out a test to to find the behavior of clients when a client is partitioned from the ensemble. Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was set up like below. A - Follower B - Leader C - Follower A <---> B <---> C II And 3 clients are connected to ensemble like below. C1 is connected A C2 is connected B C3 is connected C. To remove the network link between B and C iptables utility is used. command used: iptables -I INPUT -s Server_B_IP -j DROP iptables -I INPUT -s Server_C_IP -j DROP After removing the link connections looks like below. A <> B C II Simply there is no way to send any packets from from B to C and vice versa. But the connection exists between between B and C. Here What I noticed is that the client connected to Zookeeper Server "C", could not connect to the ensemble resulting a session expiration timeout. For this experiment I used tickTime of 3000ms and client session expiration timeout of 45000ms. And tested with different combinations also. was: Recently, carried out a test to to find the behavior of clients when a client is partitioned from the ensemble. Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was set up like below. A - Follower B - Leader C - Follower A <---> B <---> C || And 3 clients are connected to ensemble like below. C1 is connected A C2 is connected B C3 is connected C. To remove the network link between B and C iptables utility is used. command used: iptables -I INPUT -s Server_B_IP -j DROP iptables -I INPUT -s Server_C_IP -j DROP After removing the link connections looks like below. A <> B C || Simply there is no way to send any packets from from B to C and vice versa. But the connection exists between between B and C. Here What I noticed is that the client connected to Zookeeper Server "C", could not connect to the ensemble resulting a session expiration timeout. For this experiment I used tickTime of 3000ms and client session expiration timeout of 45000ms. And tested with different combinations also. > Sessions Expire due to Network partitioning in Zookeeper > - > > Key: ZOOKEEPER-2715 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2715 > Project: ZooKeeper > Issue Type: Bug > Components: c client >Affects Versions: 3.4.9 >Reporter: Tharindu Kumara > > Recently, carried out a test to to find the behavior of clients when a > client is partitioned from the ensemble. > Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was > set up like below. > A - Follower > B - Leader > C - Follower > A <---> B <---> C > II > And 3 clients are connected to ensemble like below. > C1 is connected A > C2 is connected B > C3 is connected C. > To remove the network link between B and C iptables utility is used. > command used: > iptables -I INPUT -s Server_B_IP -j DROP > iptables -I INPUT -s Server_C_IP -j DROP > After removing the link connections looks like below. > A <> B C > II > Simply there is no way to send any packets from from B to C and vice versa. > But the connection exists between between B and C. > Here What I noticed is that the client connected to Zookeeper Server "C", > could not connect to the ensemble resulting a session expiration timeout. > For this experiment I used tickTime of 3000ms and client session expiration > timeout of 45000ms. And tested with different combinations also. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (ZOOKEEPER-2715) Sessions Expire due to Network partitioning in Zookeeper
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2715?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tharindu Kumara updated ZOOKEEPER-2715: --- Description: Recently, carried out a test to to find the behavior of clients when a client is partitioned from the ensemble. Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was set up like below. A - Follower B - Leader C - Follower A <==> B <==> C II And 3 clients are connected to ensemble like below. C1 is connected A C2 is connected B C3 is connected C. To remove the network link between B and C iptables utility is used. command used: iptables -I INPUT -s Server_B_IP -j DROP iptables -I INPUT -s Server_C_IP -j DROP After removing the link connections looks like below. A <> B C II Simply there is no way to send any packets from from B to C and vice versa. But the connection exists between between B and C. Here What I noticed is that the client connected to Zookeeper Server "C", could not connect to the ensemble resulting a session expiration timeout. For this experiment I used tickTime of 3000ms and client session expiration timeout of 45000ms. And tested with different combinations also. was: Recently, carried out a test to to find the behavior of clients when a client is partitioned from the ensemble. Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was set up like below. A - Follower B - Leader C - Follower A <---> B <---> C II And 3 clients are connected to ensemble like below. C1 is connected A C2 is connected B C3 is connected C. To remove the network link between B and C iptables utility is used. command used: iptables -I INPUT -s Server_B_IP -j DROP iptables -I INPUT -s Server_C_IP -j DROP After removing the link connections looks like below. A <> B C II Simply there is no way to send any packets from from B to C and vice versa. But the connection exists between between B and C. Here What I noticed is that the client connected to Zookeeper Server "C", could not connect to the ensemble resulting a session expiration timeout. For this experiment I used tickTime of 3000ms and client session expiration timeout of 45000ms. And tested with different combinations also. > Sessions Expire due to Network partitioning in Zookeeper > - > > Key: ZOOKEEPER-2715 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2715 > Project: ZooKeeper > Issue Type: Bug > Components: c client >Affects Versions: 3.4.9 >Reporter: Tharindu Kumara > > Recently, carried out a test to to find the behavior of clients when a > client is partitioned from the ensemble. > Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was > set up like below. > A - Follower > B - Leader > C - Follower > A <==> B <==> C > II > And 3 clients are connected to ensemble like below. > C1 is connected A > C2 is connected B > C3 is connected C. > To remove the network link between B and C iptables utility is used. > command used: > iptables -I INPUT -s Server_B_IP -j DROP > iptables -I INPUT -s Server_C_IP -j DROP > After removing the link connections looks like below. > A <> B C > II > Simply there is no way to send any packets from from B to C and vice versa. > But the connection exists between between B and C. > Here What I noticed is that the client connected to Zookeeper Server "C", > could not connect to the ensemble resulting a session expiration timeout. > For this experiment I used tickTime of 3000ms and client session expiration > timeout of 45000ms. And tested with different combinations also. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (ZOOKEEPER-2715) Sessions Expire due to Network partitioning in Zookeeper
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2715?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tharindu Kumara updated ZOOKEEPER-2715: --- Description: Recently, carried out a test to to find the behavior of clients when a client is partitioned from the ensemble. Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was set up like below. A - Follower B - Leader C - Follower A <---> B <---> C || And 3 clients are connected to ensemble like below. C1 is connected A C2 is connected B C3 is connected C. To remove the network link between B and C iptables utility is used. command used: iptables -I INPUT -s Server_B_IP -j DROP iptables -I INPUT -s Server_C_IP -j DROP After removing the link connections looks like below. A <> B C || Simply there is no way to send any packets from from B to C and vice versa. But the connection exists between between B and C. Here What I noticed is that the client connected to Zookeeper Server "C", could not connect to the ensemble resulting a session expiration timeout. For this experiment I used tickTime of 3000ms and client session expiration timeout of 45000ms. And tested with different combinations also. was: Recently, carried out a test to to find the behavior of clients when a client is partitioned from the ensemble. Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was set up like below. A - Follower B - Leader C - Follower A <---> B <---> C \__/ And 3 clients are connected to ensemble like below. C1 is connected A C2 is connected B C3 is connected C. To remove the network link between B and C iptables utility is used. command used: iptables -I INPUT -s Server_B_IP -j DROP iptables -I INPUT -s Server_C_IP -j DROP After removing the link connections looks like below. A <> B C \___/ Simply there is no way to send any packets from from B to C and vice versa. But the connection exists between between B and C. Here What I noticed is that the client connected to Zookeeper Server "C", could not connect to the ensemble resulting a session expiration timeout. For this experiment I used tickTime of 3000ms and client session expiration timeout of 45000ms. And tested with different combinations also. > Sessions Expire due to Network partitioning in Zookeeper > - > > Key: ZOOKEEPER-2715 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2715 > Project: ZooKeeper > Issue Type: Bug > Components: c client >Affects Versions: 3.4.9 >Reporter: Tharindu Kumara > > Recently, carried out a test to to find the behavior of clients when a > client is partitioned from the ensemble. > Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was > set up like below. > A - Follower > B - Leader > C - Follower > A <---> B <---> C > || > And 3 clients are connected to ensemble like below. > C1 is connected A > C2 is connected B > C3 is connected C. > To remove the network link between B and C iptables utility is used. > command used: > iptables -I INPUT -s Server_B_IP -j DROP > iptables -I INPUT -s Server_C_IP -j DROP > After removing the link connections looks like below. > A <> B C > || > Simply there is no way to send any packets from from B to C and vice versa. > But the connection exists between between B and C. > Here What I noticed is that the client connected to Zookeeper Server "C", > could not connect to the ensemble resulting a session expiration timeout. > For this experiment I used tickTime of 3000ms and client session expiration > timeout of 45000ms. And tested with different combinations also. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (ZOOKEEPER-2715) Sessions Expire due to Network partitioning in Zookeeper
[ https://issues.apache.org/jira/browse/ZOOKEEPER-2715?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15902595#comment-15902595 ] Tharindu Kumara commented on ZOOKEEPER-2715: The client code used for this test. https://gist.github.com/tharindukumara/025c98ddbd406db34067a587c6d9533d > Sessions Expire due to Network partitioning in Zookeeper > - > > Key: ZOOKEEPER-2715 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2715 > Project: ZooKeeper > Issue Type: Bug > Components: c client >Affects Versions: 3.4.9 > Reporter: Tharindu Kumara > > Recently, carried out a test to to find the behavior of clients when a > client is partitioned from the ensemble. > Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was > set up like below. > A - Follower > B - Leader > C - Follower > A <---> B <---> C >\__/ > And 3 clients are connected to ensemble like below. > C1 is connected A > C2 is connected B > C3 is connected C. > To remove the network link between B and C iptables utility is used. > command used: > iptables -I INPUT -s Server_B_IP -j DROP > iptables -I INPUT -s Server_C_IP -j DROP > After removing the link connections looks like below. > A <> B C >\___/ > Simply there is no way to send any packets from from B to C and vice versa. > But the connection exists between between B and C. > Here What I noticed is that the client connected to Zookeeper Server "C", > could not connect to the ensemble resulting a session expiration timeout. > For this experiment I used tickTime of 3000ms and client session expiration > timeout of 45000ms. And tested with different combinations also. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Created] (ZOOKEEPER-2715) Sessions Expire due to Network partitioning in Zookeeper
Tharindu Kumara created ZOOKEEPER-2715: -- Summary: Sessions Expire due to Network partitioning in Zookeeper Key: ZOOKEEPER-2715 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2715 Project: ZooKeeper Issue Type: Bug Components: c client Affects Versions: 3.4.9 Reporter: Tharindu Kumara Recently, carried out a test to to find the behavior of clients when a client is partitioned from the ensemble. Here used a ensemble of 3 zookeeper servers called A, B and C. And quorum was set up like below. A - Follower B - Leader C - Follower A <---> B <---> C \__/ And 3 clients are connected to ensemble like below. C1 is connected A C2 is connected B C3 is connected C. To remove the network link between B and C iptables utility is used. command used: iptables -I INPUT -s Server_B_IP -j DROP iptables -I INPUT -s Server_C_IP -j DROP After removing the link connections looks like below. A <> B C \___/ Simply there is no way to send any packets from from B to C and vice versa. But the connection exists between between B and C. Here What I noticed is that the client connected to Zookeeper Server "C", could not connect to the ensemble resulting a session expiration timeout. For this experiment I used tickTime of 3000ms and client session expiration timeout of 45000ms. And tested with different combinations also. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
Re: New to Apache Zookeeper
Hi, Thanks Rakesh for the information. I have already went through the specified wiki page. I think it is better if I start with fixing test cases. In the mean time I will go through those pull requests. One small question, when I looking at JIRA, I see that some tickets are in open state but they are already assigned to someone. I like to know whether I could fix that kind of ticket and submit a patch? I am new to open source contribution. Thanks, Tharindu On Sun, Feb 26, 2017 at 7:59 AM, Rakesh Radhakrishnan wrote: > Hi, > > Umbrella jira to fix flaky test cases: > https://issues.apache.org/jira/browse/ZOOKEEPER-2135. > Probably, you could participate in code reviews(jira pull requests/patches > etc.). This will also help you to learn the system. > https://github.com/apache/zookeeper/pulls > > I hope you have visited > https://cwiki.apache.org/confluence/display/ZOOKEEPER/HowToContribute wiki > page. If not please read this, which is a good resource for new folks > interested in participating. > > Thanks, > Rakesh > > On Sun, Feb 26, 2017 at 12:49 AM, Tharindu Kumara < > zonik.hatkum...@gmail.com > > wrote: > > > Hi Yan, > > > > Thank you so much for your comments. I will start from there. I would > like > > to know, whether there are any tickets for this issue? > > > > Thanks > > > > On Sun, Feb 26, 2017 at 12:40 AM, Yan Fitterer wrote: > > > > > A lovely thing to do would be to work on the tests. > > > > > > In my experience, the test suite is unreliable (it fails about 2/3 or > the > > > time for me), so there are probably timing/concurrency issues that > could > > be > > > worked on. > > > > > > As a starter, run the test suite, see what fails for you (to make sure > > > you’re not picking up recent breakage, you could first confirm which > > tests > > > fail against a released version, and find one that still fails against > > > head), and see if you can make them pass. > > > > > > Just my 2c, there are plenty of other worthy contenders for > contribution, > > > I’m sure. > > > > > > > > > > On Feb 25, 2017, at 01:16, Tharindu Kumara < > zonik.hatkum...@gmail.com> > > > wrote: > > > > > > > > Hi, > > > > > > > > I'm Tharindu Kumara, and currently I am working as a Software > Engineer > > > in a > > > > well known company. I'm really interested in helping out and > > contributing > > > > to Apache Zookeeper Project . I've always loved to contribute to the > > open > > > > source community and Apache Zookeeper seems like a brilliant place > for > > me > > > > to start. > > > > > > > > > > > > I good at C/C++, Java, Python and JavaScript and I have more than 5 > > years > > > > of experience in using these languages. And also I have a good > > knowledge > > > on > > > > Distributed Computing principals. Apart from that I have a good > > > > knowledge about libraries like boost and build tools like ant, maven > > and > > > > cmake. > > > > > > > > > > > > During recent months, I read a lot about zookeeper. And I played with > > it > > > to > > > > get hand on experience. > > > > I also played with exhibitor and apache curator as well. > > > > > > > > > > > > It would be very kind of you If you could guide me along and assign > me > > a > > > > bug on which I could work and begin contributing to the open source > > > > community . > > > > > > > > > > > > Thank You > > > > > > > > > > > > > > > > LinkedIn: lk.linkedin.com/in/ <https://www.linkedin.com/in/ > > > tharindukumara> > > > > tharindukumara <https://www.linkedin.com/in/tharindukumara> > > > > StackOverflow: http://stackoverflow.com/ > users/3312620/tharindu-kumara > > > > > > > > > > > > -- > > Tharindu Kumara > > BSc Undergraduate > > University of Colombo School of Computing (UCSC). > > Student Member of IEEE > > > > LinkedIn: lk.linkedin.com/in/ <https://www.linkedin.com/in/ > tharindukumara> > > tharindukumara <https://www.linkedin.com/in/tharindukumara> > > GitHub: https://github.com/tharindukumara > > StackOverflow: http://stackoverflow.com/users/3312620/tharindu-kumara > > > -- Tharindu Kumara BSc Undergraduate University of Colombo School of Computing (UCSC). Student Member of IEEE LinkedIn: lk.linkedin.com/in/ <https://www.linkedin.com/in/tharindukumara> tharindukumara <https://www.linkedin.com/in/tharindukumara> GitHub: https://github.com/tharindukumara StackOverflow: http://stackoverflow.com/users/3312620/tharindu-kumara
Re: New to Apache Zookeeper
Hi Yan, Thank you so much for your comments. I will start from there. I would like to know, whether there are any tickets for this issue? Thanks On Sun, Feb 26, 2017 at 12:40 AM, Yan Fitterer wrote: > A lovely thing to do would be to work on the tests. > > In my experience, the test suite is unreliable (it fails about 2/3 or the > time for me), so there are probably timing/concurrency issues that could be > worked on. > > As a starter, run the test suite, see what fails for you (to make sure > you’re not picking up recent breakage, you could first confirm which tests > fail against a released version, and find one that still fails against > head), and see if you can make them pass. > > Just my 2c, there are plenty of other worthy contenders for contribution, > I’m sure. > > > > On Feb 25, 2017, at 01:16, Tharindu Kumara > wrote: > > > > Hi, > > > > I'm Tharindu Kumara, and currently I am working as a Software Engineer > in a > > well known company. I'm really interested in helping out and contributing > > to Apache Zookeeper Project . I've always loved to contribute to the open > > source community and Apache Zookeeper seems like a brilliant place for me > > to start. > > > > > > I good at C/C++, Java, Python and JavaScript and I have more than 5 years > > of experience in using these languages. And also I have a good knowledge > on > > Distributed Computing principals. Apart from that I have a good > > knowledge about libraries like boost and build tools like ant, maven and > > cmake. > > > > > > During recent months, I read a lot about zookeeper. And I played with it > to > > get hand on experience. > > I also played with exhibitor and apache curator as well. > > > > > > It would be very kind of you If you could guide me along and assign me a > > bug on which I could work and begin contributing to the open source > > community . > > > > > > Thank You > > > > > > > > LinkedIn: lk.linkedin.com/in/ <https://www.linkedin.com/in/ > tharindukumara> > > tharindukumara <https://www.linkedin.com/in/tharindukumara> > > StackOverflow: http://stackoverflow.com/users/3312620/tharindu-kumara > > -- Tharindu Kumara BSc Undergraduate University of Colombo School of Computing (UCSC). Student Member of IEEE LinkedIn: lk.linkedin.com/in/ <https://www.linkedin.com/in/tharindukumara> tharindukumara <https://www.linkedin.com/in/tharindukumara> GitHub: https://github.com/tharindukumara StackOverflow: http://stackoverflow.com/users/3312620/tharindu-kumara
New to Apache Zookeeper
Hi, I'm Tharindu Kumara, and currently I am working as a Software Engineer in a well known company. I'm really interested in helping out and contributing to Apache Zookeeper Project . I've always loved to contribute to the open source community and Apache Zookeeper seems like a brilliant place for me to start. I good at C/C++, Java, Python and JavaScript and I have more than 5 years of experience in using these languages. And also I have a good knowledge on Distributed Computing principals. Apart from that I have a good knowledge about libraries like boost and build tools like ant, maven and cmake. During recent months, I read a lot about zookeeper. And I played with it to get hand on experience. I also played with exhibitor and apache curator as well. It would be very kind of you If you could guide me along and assign me a bug on which I could work and begin contributing to the open source community . Thank You LinkedIn: lk.linkedin.com/in/ <https://www.linkedin.com/in/tharindukumara> tharindukumara <https://www.linkedin.com/in/tharindukumara> StackOverflow: http://stackoverflow.com/users/3312620/tharindu-kumara