-----------------------------------------------------------
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

Reply via email to