-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/66192/
-----------------------------------------------------------

(Updated May 8, 2018, 4:26 p.m.)


Review request for Aurora, David McLaughlin, Jordan Ly, Santhosh Kumar 
Shanmugham, and Stephan Erb.


Changes
-------

* Variable update group strategy now determines what step it is in dynamically 
-- no more writing to storage.
* Surface are greatly reduced and potential path towards merging Batch and 
Variable Batch were created.
* Currently works for the following cases:
- Update results in more instances.
- Update only updates existing instances.
* Does not work in its current form when the update results in less instances 
(will address this in the next iteration).
* Introduced an optional JobUpdateStrategyType which allows for explicitly 
setting which strategy to use in order to avoid confusion. If this field is not 
set, the type is determined to be QUEUE or BATCH depending on 
waitFortBatchCompletion for backwards compatibility. The plan is to deprecate 
waitForBatchCompletion and updateGroupSize depending on feedback.
* Backwards compatible by using optional fields and using old fields to 
populate the new ones.

Thanks for all the feedback so far, very much appreciated!


Repository: aurora


Description
-------

Adding support for variable group sizes when executing an update.

Design doc for this change is here: 
https://docs.google.com/document/d/1xGk4ueH8YlmJCk6hQJh85u4to4M1VQD0l630IOchvgY/edit#heading=h.lg3hty82f5cz

I opted for the path of least resistance with regards to the Thrift changes as 
I didn't see any benefit in making the larger changes required to make the 
interfaces a bit more flexible.

Requesting feedback on these changes and the approach from the community before 
I proceed.

Tests will be added after the community approves of the direciton and approach.

Note to reviewers: Changes made in ActiveLimitedStrategy.java were made to move 
towards getting rid of FluentIterable. I figured since I was touching that 
code, it wouldn't hurt to test the Java 8 equivalent of it. I can get rid of 
the change here and make it in a separate patch if desired.


Diffs (updated)
-----

  api/src/main/thrift/org/apache/aurora/gen/api.thrift 
ef754e32172e7490a47a13e7b526f243ffa3efeb 
  
src/main/java/org/apache/aurora/scheduler/thrift/SchedulerThriftInterface.java 
9fc0416086dd3eb2e2f4e8f659da59fcdea2b22b 
  src/main/java/org/apache/aurora/scheduler/updater/UpdateFactory.java 
3992aa77fc305adc390a4aaeb1d3939d6241ddbd 
  
src/main/java/org/apache/aurora/scheduler/updater/strategy/ActiveLimitedStrategy.java
 855ea9c20788b51695b7eff5ac0970f0d52a9546 
  
src/main/java/org/apache/aurora/scheduler/updater/strategy/VariableBatchStrategy.java
 PRE-CREATION 


Diff: https://reviews.apache.org/r/66192/diff/2/

Changes: https://reviews.apache.org/r/66192/diff/1-2/


Testing
-------


Thanks,

Renan DelValle

Reply via email to