我最近从 1.x 升级到最新版本 2.1.2。我运行了 db 脚本并进行了必要的代码更改,我们现在只是在测试它。除了一个奇怪的例外,一切似乎都按预期工作。我们有一个小用户界面,我们可以查询 qrtz_trigger 表,以便我们可以看到运行时的所有计划。
当我使用每日 CRON 触发器安排作业时,它将在第一次运行的正确时间运行,但随后的时间将关闭一小时。例如,假设我安排每天下午 2:30 运行每日作业,我的 cron 表达式如下所示:
0 30 14 ? * 周一至周日
CRON 表达式也同样出现在 db 中。当我查看 qrtz_triggers 表时,我看到以下内容(从刻度转换而来):
- NEXT_FIRE_TIME: 2013-08-15 14:30:00.000
- PREV_FIRE_TIME:空
到目前为止,一切都很好。但随后触发器触发,运行作业并且 qrtz_triggers 表更新为:
- NEXT_FIRE_TIME: 2013-08-16 13:30:00.000
- PREV_FIRE_TIME: 2013-08-15 14:30:00.000
我们保持所有服务器在 UTC 上运行以避免混淆。这是一个错误吗?这里可能发生了什么?我们在 1.x 中看不到这种行为