Если вы используете одни и те же таблицы базы данных до и после миграции, так что ранее существующие задачи таймера остаются запланированными, и был период времени, в течение которого они не могли быть запущены, описанное вами поведение может быть связано сотслеживание пропущенных выполнений.
Если это так, попробуйте запросить таблицу ( задокументировано здесь ) для NEXTFIRETIME.Если число миллисекунд, представленное этим значением, относится к дате в прошлом, то вы можете ожидать выполнения пропущенных выполнений.Один из вариантов - запустить его и позволить ему догнать текущее время.В противном случае вы можете отменить и перенести задачи таймера.