This is an automatically generated e-mail. To reply, visit:

(Updated Sept. 6, 2016, 6:46 p.m.)

Review request for Aurora, Joshua Cohen, Maxim Khutornenko, and Zameer Manji.


Relax the watch_secs PreCondition check constraint on scheduler.

Summary (updated)

Scheduler updater will not use watch_sec if health check is enabled

Bugs: AURORA-894

Repository: aurora

Description (updated)

- Scheduler updater will not use watch_sec if health check is enabled.

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: 
 for more details and background.

After discussion on Aurora dev list, we decided to keep the watch_secs 
infrastructure intact on scheduler side. Our final conclusion is that we adopt 
the following implementation:

1. If the users want purely health checking driven updates they can set 
watch_secs to 0 and enable health checks.

2. If they want to have both health checking and time driven updates they can 
set watch_secs to the time that they care about, and doing health checks at 
STARTING state as well.

3. If they just want time driven updates they can disable health checking and 
set watch_secs to the time that they care about.

In this review, there will be only one scheduler change: 
Currently scheduler does not accept zero value for watch_secs, we need to relax 
this constraint.

Executor change to do (in a separate review):
The executor starts health check at STARTING, if a successful health check is 
performed before initial_interval_sec expires, the executor will sends a status 
message for RUNNING.

Diffs (updated)


Diff: https://reviews.apache.org/r/51536/diff/

Testing (updated)

./gradlew build

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



Kai Huang

Reply via email to