Problem
You schedule a job (AWS | Azure | GCP) to run once per day, using Quartz Cron Syntax, but the job tries to run multiple times on the same day.
Cause
When the job was configured, it was scheduled by manually entering the cron syntax and a special character * was accidentally set for the seconds value. This tells the cron scheduler to run the job once every second.
Cron syntax specifies a time in the format <seconds> <minutes> <hours> <day-of-month> <month> <day-of-week>. Numbers are used for the values and special characters can be used for multiple values.
For example, the cron syntax * 07 04 * * ? instructs the system to attempt to start the job once every second from 04:07:00 to 04:07:59, every day.
Solution
You need to specify a value for the seconds field. By default, Databricks uses 10 for the seconds field.
By changing * to 10 in the previous example, the cron scheduler only runs the job once per day, at 04:07:10.
For more information, review the Quartz Job Scheduler CronTrigger Tutorial documentation.