-
Bug
-
Resolution: Fixed
-
Minor
-
4.4.5
This is about scheduled tasks set to run at the hour when the clocks change for daylight saving time. E.g. if a task is set to run at 1am every day in the Europe/London timezone, then the day the clocks go forward gets skipped because 1am doesn't exist on that day.
There is an existing unit test for this case (scheduled_task_test::test_get_next_scheduled_time) that does catch this issue, however that just tests the current time so it will only test this case once a year if you happen to run your tests at the right time.
We actually noticed this because the existing unit test breaks when the clocks go backwards. In this case, the test expects the next scheduled time to be the first occurrence of 1am (midnight UTC), however get_next_scheduled_time actually gets the second occurrence of 1am (1am UTC). In this case, get_next_scheduled_time is actually doing the right thing, so the test is wrong.
So to fix this, we will fix get_next_scheduled_time in the case where the clocks go forward, and we will move the daylight saving time tests into a unit test that doesn't depend on the time when the tests are run.
- will help resolve
-
MDL-85055 Random failures on different task unit tests
-
- Open
-