Martin Ritchie wrote:
2009/7/8 Rafael Schloming <[email protected]>:
Martin Ritchie wrote:
2009/7/8 Rafael Schloming <[email protected]>:
Aidan Skinner wrote:
On Tue, Jul 7, 2009 at 8:45 PM, <[email protected]> wrote:

Author: rhs
Date: Tue Jul  7 19:45:04 2009
New Revision: 791954

URL: http://svn.apache.org/viewvc?rev=791954&view=rev
Log:
Reverted 787626 as it was causing the regular profiles to fail.
Uh, it is? They passed fine for me. What problem were you seeing?
The cleanBroker() ends up deleting the data directory out from underneath
the running broker causing it to die.

I suspect the problem you're seeing with QPID-1935 is actually a real
broker
bug where it's failing to update the persistent store when messages are
dequeued causing one test to interfere with the next.

--Rafael
If the cleanBoker/delete was done before the super.setUp() call then
the broker would not be running so it should't be a problem.
Possibly, but cleanBroker() isn't really meant to be used that way, and it
invalidates the test anyways. You really shouldn't have to clean for the
test to pass. As I said, I'm pretty sure if the test is failing when
persistence is enabled it's pointing to an actual bug.

I don't recall how the cpp broker tests run but the transient java
tests have a fresh broker for each run. So if I put messages on the
queue and test they are they as part of the test then stop the broker
the messages go away. If use persistence then they won't. So the fact
that most of our tests use the queue 'queue' will result in previous
tests affecting the current test.

The tests clean up after themselves, so if they run correctly, you shouldn't get messages spilling over from one test to the next.

 Running clean between each test case
should not cause a failure in the broker as the broker is stopped and
started between each test. As long as the order is stop, clean ,start
then there should be no problem.

Running clean properly between each test shouldn't cause a failure, however it will cause bugs like QPID-1917 to go undetected.

Also, cleanBroker() doesn't really distinguish which broker it's running for, it simply wipes out all the data directories, and so it should never be called when there is a running broker.

--Rafael


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:[email protected]

Reply via email to