Deadlock in TC plugin for nunit when run standalone?

Hi folks. I've just hit a problem while trying to diagnose failing tests in a TC build (the failures were my fault, and not important here).

To try to recreate the issue, I logged onto the build agent, cd'd into the build agent's work directory and ran the rake script from the command line. As part of our build, we get and copy the TC nunit addin, and this was still in the addins directory when I ran the script. When it ran nunit, it showed it was loading and initialising the TC addin, but then it sat there doing nothing. Killing nunit allowed the build to continue. If I removed the TC addin, it ran all the tests.

I had a quick look at recreating locally, with a debugger and dotPeek to hand. It appears that there are three threads deadlocked - the TestRunnerThread, EventPumpThread and TeamCity's Messages thread. Both the TestRunnerThread and the Messages thread are stuck in a sleep, wait or join at Nunit.Core.EventQueue. TestRunnerThread is waiting on an event to be signalled in response to logging an event.

This is using TeamCity 7.0.2, with the 7.0.396.0 addin for nunit 2.5.2.

Hope this helps

1 comment
Comment actions Permalink

Do you have a stacktrace of it? You may use 'dump threads' action from UI to get .NET thread dump


Please sign in to leave a comment.