How to capture the watch event generated by zoo_aexists?

2017-07-18 Thread Tharindu Kumara
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

2017-05-15 Thread Tharindu Kumara
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

2017-03-09 Thread Tharindu Kumara (JIRA)

 [ 
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

2017-03-09 Thread Tharindu Kumara (JIRA)

 [ 
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

2017-03-09 Thread Tharindu Kumara (JIRA)

 [ 
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

2017-03-08 Thread Tharindu Kumara (JIRA)

 [ 
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

2017-03-08 Thread Tharindu Kumara (JIRA)

 [ 
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

2017-03-08 Thread Tharindu Kumara (JIRA)

 [ 
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

2017-03-08 Thread Tharindu Kumara (JIRA)

 [ 
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

2017-03-08 Thread Tharindu Kumara (JIRA)

 [ 
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

2017-03-08 Thread Tharindu Kumara (JIRA)

 [ 
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

2017-03-08 Thread Tharindu Kumara (JIRA)

[ 
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

2017-03-08 Thread Tharindu Kumara (JIRA)
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

2017-02-26 Thread Tharindu Kumara
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

2017-02-25 Thread Tharindu Kumara
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

2017-02-24 Thread Tharindu Kumara
​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