Repository: aurora
Updated Branches:
  refs/heads/master 19866b516 -> 8fca74501


Modify the watch_secs assertion on scheduler

This feature intends to improve reliability and performance of the Aurora
scheduler job updater by relying on health check status rather than watch_secs
timeout when deciding an individual instance update state.

See this epic: https://issues.apache.org/jira/browse/AURORA-894
and the design doc:
https://docs.google.com/document/d/1ZdgW8S4xMhvKW7iQUX99xZm10NXSxEWR0a-21FP5d94/edit#
for more details and background.

Testing Done:
./gradlew build

./gradlew :test --tests "org.apache.aurora.scheduler.updater.JobUpdaterIT"

./build-support/jenkins/build.sh

Bugs closed: AURORA-894

Reviewed at https://reviews.apache.org/r/51536/


Project: http://git-wip-us.apache.org/repos/asf/aurora/repo
Commit: http://git-wip-us.apache.org/repos/asf/aurora/commit/8fca7450
Tree: http://git-wip-us.apache.org/repos/asf/aurora/tree/8fca7450
Diff: http://git-wip-us.apache.org/repos/asf/aurora/diff/8fca7450

Branch: refs/heads/master
Commit: 8fca7450152fc242e632e643f44461279399b7ca
Parents: 19866b5
Author: Kai Huang <texasred2...@hotmail.com>
Authored: Wed Sep 7 17:06:39 2016 -0700
Committer: Zameer Manji <zma...@apache.org>
Committed: Wed Sep 7 17:06:39 2016 -0700

----------------------------------------------------------------------
 RELEASE-NOTES.md                                                 | 1 +
 .../java/org/apache/aurora/scheduler/updater/UpdateFactory.java  | 4 ++--
 .../java/org/apache/aurora/scheduler/updater/JobUpdaterIT.java   | 2 +-
 3 files changed, 4 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/aurora/blob/8fca7450/RELEASE-NOTES.md
----------------------------------------------------------------------
diff --git a/RELEASE-NOTES.md b/RELEASE-NOTES.md
index d79aaad..bbf7198 100644
--- a/RELEASE-NOTES.md
+++ b/RELEASE-NOTES.md
@@ -34,6 +34,7 @@
   scheduler upgrade should be performed by bringing all schedulers down, and 
then bringing upgraded
   schedulers up. A rolling upgrade would result in no leading scheduler for 
the duration of the
   roll which could be confusing to monitor and debug.
+- Add a new MTTS (Median Time To Starting) metric in addition to MTTA and MTTR.
 
 ### Deprecations and removals:
 

http://git-wip-us.apache.org/repos/asf/aurora/blob/8fca7450/src/main/java/org/apache/aurora/scheduler/updater/UpdateFactory.java
----------------------------------------------------------------------
diff --git 
a/src/main/java/org/apache/aurora/scheduler/updater/UpdateFactory.java 
b/src/main/java/org/apache/aurora/scheduler/updater/UpdateFactory.java
index ac8df3e..14c2d2d 100644
--- a/src/main/java/org/apache/aurora/scheduler/updater/UpdateFactory.java
+++ b/src/main/java/org/apache/aurora/scheduler/updater/UpdateFactory.java
@@ -77,8 +77,8 @@ interface UpdateFactory {
       requireNonNull(instructions);
       IJobUpdateSettings settings = instructions.getSettings();
       checkArgument(
-          settings.getMinWaitInInstanceRunningMs() > 0,
-          "Min wait in running must be positive.");
+          settings.getMinWaitInInstanceRunningMs() >= 0,
+          "Min wait in running must be non-negative.");
       checkArgument(
           settings.getUpdateGroupSize() > 0,
           "Update group size must be positive.");

http://git-wip-us.apache.org/repos/asf/aurora/blob/8fca7450/src/test/java/org/apache/aurora/scheduler/updater/JobUpdaterIT.java
----------------------------------------------------------------------
diff --git 
a/src/test/java/org/apache/aurora/scheduler/updater/JobUpdaterIT.java 
b/src/test/java/org/apache/aurora/scheduler/updater/JobUpdaterIT.java
index 04551f1..196df47 100644
--- a/src/test/java/org/apache/aurora/scheduler/updater/JobUpdaterIT.java
+++ b/src/test/java/org/apache/aurora/scheduler/updater/JobUpdaterIT.java
@@ -1062,7 +1062,7 @@ public class JobUpdaterIT extends EasyMockTest {
     expectInvalid(update);
 
     update = makeJobUpdate().newBuilder();
-    update.getInstructions().getSettings().setMinWaitInInstanceRunningMs(0);
+    update.getInstructions().getSettings().setMinWaitInInstanceRunningMs(-1);
     expectInvalid(update);
   }
 

Reply via email to