Thanks Jordan and Guy. I'll look into both those options.

Regards,
Irfan.

On Thu, Jun 23, 2016 at 8:40 AM, Guy Laden <[email protected]> wrote:

> Hi Irfan,
> Does the ZooKeeper cluster that you want to run your clients against enable
> you to connect the servers via JMX?
> If yes then you could retrieve the list of clients connected to the server
> (via JMX) and then invoke terminateConnection or terminateSession on the
> connection of interest to you.
>
> https://github.com/apache/zookeeper/blob/branch-3.4/src/java/main/org/apache/zookeeper/server/ConnectionMXBean.java
> So, not exactly session expiration but might be of use.
> Regards,
> Guy
>
> On Thu, Jun 23, 2016 at 5:02 PM, Jordan Zimmerman <
> [email protected]> wrote:
>
> > This is the old way to do it:
> >
> >
> >
> https://github.com/apache/curator/blob/master/curator-test/src/main/java/org/apache/curator/test/KillSession.java
> >
> > -Jordan
> >
> > > On Jun 23, 2016, at 8:46 AM, Irfan Hamid <[email protected]>
> wrote:
> > >
> > > Thanks Jordan. I'm currently using 3.4.6 so was hoping for a solution
> > > there. Secondly, the solution you've described would be suitable for
> > > unit-testing since it requires access to the ZooKeeper client object,
> or
> > am
> > > I missing something and we can inject a session expiration for a
> > different
> > > session than the one the client object is in?
> > >
> > > Thanks,
> > > Irfan.
> > >
> > >
> > > On Wed, Jun 22, 2016 at 1:21 PM, Jordan Zimmerman <
> > > [email protected]> wrote:
> > >
> > >> In ZK 3.5.x there is a method for this:
> > >>
> > >>        client.getTestable().injectSessionExpiration();
> > >>
> > >> -JZ
> > >>
> > >>> On Jun 22, 2016, at 3:18 PM, Irfan Hamid <[email protected]>
> > wrote:
> > >>>
> > >>> Hi,
> > >>>
> > >>> I'm testing some client code against a ZK cluster, and since it's
> local
> > >>> testing I can use a single ZK instance as well if need be. I'm trying
> > to
> > >>> simulate an expired connection so I can validate my reconnect logic.
> > I've
> > >>> tried the following:
> > >>>
> > >>> 1. Single ZK server: connect from client, then kill -9 zkpid (this
> > >> results
> > >>> in disconnect). Try waiting a long time then restart ZK server, it
> > >>> reconnects;
> > >>> 2. Multiple ZK server quorum: connect from client, then kill -9 zkpid
> > >> (the
> > >>> one client connected to). This causes the client to be disconnected
> and
> > >>> then connects to a different quorum server, until there is no
> majority
> > >> left
> > >>> active (1 out of 3) and then it can't reconnect.
> > >>>
> > >>> Is there an easy way for me to simulate an end-to-end scenario
> outside
> > of
> > >>> unit-tests that lets me see the behavior of my reconnect logic?
> > >>>
> > >>> Thanks,
> > >>> Irfan.
> > >>
> > >>
> >
> >
>

Reply via email to