Hello SmartThings Community!
I’d like to make you aware of a change coming to our scheduler. As it stands today we are not strictly enforcing any limits on how short a cron schedule can run in a SmartApp. We also provide a tip in our documentation that it is not recommended to schedule anything under 60 seconds because a schedule like that can become unreliable.
As some of you may, or may not know, we are in the process of building and releasing a new scheduler. While we build the new scheduler we are looking for ways to improve and maintain the current scheduler and any future schedulers we release.
To that end, we will start enforcing a limit on cron schedules. Starting Monday, March 14, 2016 we will not allow cron schedules which run more often than 1 minute intervals. While we don’t anticipate this change having wide impact, we wanted to announce the change so you can adjust your development habits and current SmartApps/Device Type Handlers accordingly.
What will happen if a schedule in my SmartApp/DeviceType hits this limit?
We will do some magic on our end and your app will be automatically rescheduled at a one minute interval.
See the table below for examples:
Here are some additional examples of cron jobs that will be re-written:
- '1/5 * * * * ?'
- '* * * * * ?'
- '* * * * MAR,JUN,SEP,DEC ?'
- '* 0/15 * * * ?’
Will I see any errors in the logs?
No, since the cron expression won’t inherently break, and we only re-write it to run in at least a one minute interval, we will not display logs.
What will happen to my current Cron Jobs?
They will remain untouched until the schedule is updated. If your cron expression is set to run more often than once per minute it will be re-written on the backend to run at a 1 minute interval when the schedule is updated or a new SmartApp is installed.
We appreciate your understanding as we evaluate and find ways to improve our scheduler consistency.