snowflake-cloud-data-platform - 雪花 cron 任务错误?(不能在每个月的 x 天做)
问题描述
我相信使用 cron 作业的任务调度存在重大缺陷 - 如果我错了或者我遗漏了一些东西,请纠正我:
如果安排在未来几个月的所需日期之前的一个月中的某一天,那就太好了(今天是第 5 天,我可以将任务安排为每月第 6 天或 5 到 12 之间的任何日期参数)
CREATE OR REPLACE TASK MYTASK
WAREHOUSE= XXX
SCHEDULE = 'USING CRON 1 17 6 * * Asia/Kuala_Lumpur'
AS CALL SP_ALL_OPS();
ALTER TASK MYTASK RESUME;
select * from table(information_schema.task_history(task_name=>'MYTASK')) WHERE STATE = 'SCHEDULED';
如果安排在未来几个月的所需日期之前的一个月中的某一天,那就不好了(今天是第 5 天,我不能安排每个月第 1 天的任务)。补充:任务只能接受 5 到 12 之间的一天(正好 1 周)。超出这个范围的数字根本不能用(BIZARRE BEHAVIOR @@)
CREATE OR REPLACE TASK MYTASK
WAREHOUSE= XXX
SCHEDULE = 'USING CRON 1 17 1 * * Asia/Kuala_Lumpur'
AS CALL SP_ALL_OPS();
ALTER TASK MYTASK RESUME;
select * from table(information_schema.task_history(task_name=>'MYTASK')) WHERE STATE = 'SCHEDULED';
我做错什么了吗?让我知道是否有解决方案。在这种情况下,我只能在每月 1 日安排一次任务,并在第一次运行时运行所需的任务?这根本没有意义,因为典型的 linux 机器 cron 作业不会以这种方式运行。无法在线找到解决方案 - 因此,如果有人能对此有所了解,那将会很有帮助。
编辑:这里“不好”,因为当我运行上面的任务时,它不会显示任务是否已“计划”。很好,指出查询只能“返回过去 7 天内的任务活动或未来 8 天内的下一次计划执行”。
解决方案
这与安排任务无关。如果您运行以下命令,您应该能够看到任务,并且它的状态将是“已启动”,这意味着它已被安排。
SHOW TASKS LIKE 'MYTASK';
这是关于 information_schema.task_history 函数的:
https://docs.snowflake.com/en/sql-reference/functions/task_history.html#usage-notes
此函数可以返回过去 7 天内运行的所有执行或接下来 8 天内的下一次计划执行。
推荐阅读
- python - 将文件存储在 Json 字段中,Django
- routes - .Net Core 3 Razor 页面捕获 404
- c++ - 具有指数表示的无符号和/或长字面量
- windows - Windows 窗体调用图形 api,服务器错误:在 AAD 中按用户 ID 查找用户失败
- javascript - 在 Symfony 下将数据库值传递给 JavaScript?
- discord - Discord.js,message.guild.owner 返回 null
- php - [Laravel]昨天post的create-function可以工作,但现在不行
- java - 在 Java 中对具有一些要求的字符串数组进行排序
- python - AssertionError: will build wheel with unsupported tag ('cp310', 'cp310', 'linux_x86_64')
- javascript - 开始嵌入 Dailymotion 视频时暂停滑块