【发布时间】:2023-01-04 23:24:10
【问题描述】:
计划已设置为在每个月的周一至周五的 14 日至 25 日之间更新此表。虽然,构建最近在 8 月 12 日被触发,根据指定的 CRON,这不应该发生。
【问题讨论】:
标签: scheduler palantir-foundry
计划已设置为在每个月的周一至周五的 14 日至 25 日之间更新此表。虽然,构建最近在 8 月 12 日被触发,根据指定的 CRON,这不应该发生。
【问题讨论】:
标签: scheduler palantir-foundry
罪魁祸首似乎是 Foundry 之外的 cron 表达式的限制——特别是这一部分:
命令执行的日期可以由两个字段指定——月中的某天和一周中的某天。如果两个字段都受限制(即不是 *),则当任一字段与当前时间匹配时将运行该命令。例如,“30 4 1,15 * 5”会导致命令在每个月的 1 号和 15 号以及每个星期五的凌晨 4:30 运行。
因此,cron 计划 30 8 14-25 * 1-5 将在每月的 14 日和 25 日之间以及每周一到周五运行。 (例如,参见 crontab.guru (https://crontab.guru/#30_8_14-25_*_1-5)。)
为它生成的描述不准确,不幸的是我们无法控制它,因为我们使用库将 cron 表达式转换为人类可读的表达式。
有关的:
- https://unix.stackexchange.com/questions/602328/are-the-day-of-month-and-day-of-week-crontab-fields-mutually-exclusive
- https://unix.stackexchange.com/questions/602216/when-will-an-interval-cron-execute-the-first-time-ex-3-days/602222#602222
- https://blog.healthchecks.io/2022/09/schedule-cron-job-the-funky-way/
【讨论】: