----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/16636/ -----------------------------------------------------------
(Updated Jan. 4, 2014, 11:21 p.m.) Review request for Aurora, Kevin Sweeney and Maxim Khutornenko. Changes ------- Fixed a race caught after a few dozen runs. I forget why the indirection to get a Scheduler instance existed, but it seems unnecessary, making for an easy fix. Running the latest diff for 100 test iterations to gain confidence, will follow up with any additional issues. Repository: aurora Description ------- I dug into this after noticing SchedulerIT test flakiness (deadlock) as a result of tearDown actions being executed SchedulerActive event was being dispatched. The test is arranged such that it expects the effects of that event to occur before the test exits. The deadlock was related to EasyMock's default global lock for mock answering, so that particular deadlock does not affect us in production. Please see the lengthy comment in SchedulerLifecycle.java explaining the mechanics of the change. Diffs (updated) ----- src/main/java/org/apache/aurora/scheduler/SchedulerLifecycle.java bf926a740c3dafc811165e13a437853a5390bfe6 src/test/java/org/apache/aurora/scheduler/SchedulerLifecycleTest.java 24cd6faa4c9610b369002e842450b9b2bf87dfca src/test/java/org/apache/aurora/scheduler/app/SchedulerIT.java 41fd3a0672a264a93814b1e2d1585232d9d506f9 Diff: https://reviews.apache.org/r/16636/diff/ Testing ------- Prior to this change, i could trigger the deadlock about 50% of the time. With this change, i've run tests many times with no issues. Thanks, Bill Farner