----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/59640/#review176457 -----------------------------------------------------------
Ship it! lgtm overall. Might want to add one more test case on the ordering for the edge case where we're adding, updating *and* killing instances. E.g. imagine the scenario where a service has 5 instances, but out of band, someone has manually killed instances 0 and 1. Then we come along and we want to update to a new task config, but also reduce the instance count to 4. So, current instances: 2, 3, 4, desired instances: 0, 1, 2, 3. In that scenario I believe we'd add instance 0 and 1, update instance 2 and 3, and kill instance 4. - Joshua Cohen On May 30, 2017, 9:21 p.m., Jordan Ly wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/59640/ > ----------------------------------------------------------- > > (Updated May 30, 2017, 9:21 p.m.) > > > Review request for Aurora, David McLaughlin, Santhosh Kumar Shanmugham, > Stephan Erb, and Zameer Manji. > > > Bugs: AURORA-1928 > https://issues.apache.org/jira/browse/AURORA-1928 > > > Repository: aurora > > > Description > ------- > > Currently, when updating a job we choose to update instances naively by > ascending instance ID number. > However, it would be better to add new instances before killing and updating > older instances. > > This patch makes it so the job updater prefers to create new instances, then > update instances, and finally kill instances. > > > Diffs > ----- > > src/main/java/org/apache/aurora/scheduler/updater/UpdateFactory.java > 14c2d2de3186271819a5f4e527d3b30fd34d2b21 > src/test/java/org/apache/aurora/scheduler/updater/JobUpdaterIT.java > 290385d737294e23e9dd50f2631303124aa7af7c > > src/test/java/org/apache/aurora/scheduler/updater/UpdateFactoryImplTest.java > 611f6b8681c8e0b286cd361bdb5ace1fea39d9a5 > > > Diff: https://reviews.apache.org/r/59640/diff/1/ > > > Testing > ------- > > Ran unit tests and integration tests. > > Had to modify some integration tests since we now prefer to create over > update -- needed to change > the ordering of actions. Additionally, some unit tests only specified configs > for one instance even > though desiredInstances is always 2 -- had to make it so the range of > configurations is always 0-2 > when creating. Otherwise, it would try to create instances first even though > the test didn't really > care. > > Tested different update configurations on the Vagrant cluster: only adding > instances, only updating > instances, only killing instances, create & update, update & kill. > > > Thanks, > > Jordan Ly > >
