Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Abandoned
-
proton-0.4
-
None
-
None
-
Linux
Description
I ran the python test suite against proton-c today and noticed that ServerTest.testIdleTimeout failed with the following output:
proton_tests.engine.ServerTest.testIdleTimeout ..........................ERROR amqp:resource-limit-exceeded local-idle-timeout expired fail Error during test: Traceback (most recent call last): File "./tests/python/proton-test", line 340, in run phase() File "/.../workspace/proton/tests/python/proton_tests/engine.py", line 1412, in testIdleTimeout assert self.conn.state == (Endpoint.LOCAL_ACTIVE | Endpoint.REMOTE_ACTIVE), "Connection terminated" AssertionError: Connection terminated
This test usually succeeds so I guess it contains a race condition.
Something that is arguably more problematic is that this failure causes the test suite to hang. The suite proceeds to run the other tests, but does not terminate when it reaches the end. On Linux, I actually had to kill the process rather than ctrl-c-ing it.
I cannot reproduce the test failure, but I do find that if I make it fail (for example, by modifying the assert on line 1412 to always fail) then the suite hangs every time.
It's obviously undesirable for a failing test to cause the entire suite to hang.