testAsyncCreateClose is badly broken
------------------------------------
Key: ZOOKEEPER-505
URL: https://issues.apache.org/jira/browse/ZOOKEEPER-505
Project: Zookeeper
Issue Type: Bug
Components: contrib-bookkeeper
Reporter: Utkarsh Srivastava
Priority: Critical
The test case testAsyncCreateClose is badly broken. I was wondering why all the
unit tests are passing inspite of having found so many different problems with
LedgerManagementProcessor.
There is a big try-catch block sitting in the test case that catches all
exception, prints their stack trace, and exits, thereby allowing the test to
pass. In general, unit tests shouldnt catch exceptions unless it is something
you are expecting that will happen.
Another problem is that the same ControlObject is used for synchronization
throughout. Since we already have the problem of callbacks being called
multiple times (ZOOKEEPER-502), notify() on the control object is called too
many times, resulting in the unit test not waiting for certain callbacks.
Thus the test never waits for the asyncOpenLedger() to finish, and hence still
succeeds. I believe asyncOpenLedger() has never worked right.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.