zookeeper-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From César Álvarez Núñez <cesar.alvarez.nu...@gmail.com>
Subject Wrong call to MBeanRegistry.unregisterAll() at QuorumPeer.run()?
Date Mon, 03 Oct 2011 15:06:45 GMT
Hi all,

I'm playing with "org.apache.zookeeper.test.QuorumUtil" in order to validate
disconnected/expired logic from my Zookeeper clients but I've found the
following problem:

QuorumUtil qU = new QuorumUtil(1); // Creates a 3 servers ensemble.
qU.startAll(); // Startup the 3 servers.
qU.shutdown(firstFollower);
qU.shutdown(secondFollower);
qU.restart(firstFollower); // It throws an Assertion Error.

The problem is that an AssertionError is thrown at MBeanRegistry:89 (public
void register(ZKMBeanInfo bean, ZKMBeanInfo parent)) which is catched
internally.
I'm not really sure where the problem is, but I think that invocation to
method "MBeanRegistry.getInstance().unregisterAll();" in finally clause at
QuoumPeer.run() method is not 100% right. At least in this use case where
there are 3 QuormPeer instances running on the same JVM.

In fact, after commenting that line server restarting works fine.

I'm not pretty sure if it is a bug or I'm making an improper use of
QuorumUtil.

Any help?
/César.

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message