Details
-
Improvement
-
Status: Resolved
-
P2
-
Resolution: Fixed
-
None
-
None
Description
Jenkins can do automatic load balancing for cron jobs that use the "H" syntax [1], but we apply it only sporadically (and often incorrectly) in Beam. For example, the default setting is currently '0 */6 * * *' [2]. This means "every six hours, starting from exactly 00:00 (UTC)." Which creates load spikes every 6 hours, since a ton of jobs are run at once, rather than being staggered.
[1] https://github.com/jenkinsci/jenkins/blob/master/core/src/main/resources/hudson/triggers/TimerTrigger/help-spec.jelly#L40-L41
[2] https://github.com/apache/beam/blob/4dddaf9c3d70b5b858c16265abee4cdbf0c72631/.test-infra/jenkins/CronJobBuilder.groovy#L40
Attachments
Issue Links
- links to