类别:

Snowpark Container Services 功能

<service_name>!SPCS_WAIT_FOR

等待 Snowpark Container Services 服务 达到指定状态,该操作有超时限制。

  • 执行异步作业时,使用此辅助函数来等待作业完成。

  • 创建服务时,使用此辅助函数等待服务进入运行状态。

另请参阅:

Snowpark Container Services:使用服务

语法

<service_name>!SPCS_WAIT_FOR( <status>, <timeout_sec> );
Copy

实参

必填实参

'status'

等待目标状态。有关服务状态值的列表,请参阅 DESCRIBE SERVICE 命令的输出部分。

timeout_sec

等待达到指定状态的最长时间(秒)。如果在超时时间内未达到指定状态,则该函数将返回一条包含当前服务状态的错误消息。

返回

如果服务未在超时内达到指定状态,或者 Snowflake 确定永远无法达到该状态,则该函数会返回一条错误消息,该消息也会提供当前服务状态。否则,它将返回成功消息。

访问控制要求

用于执行此 SQL 命令的 角色 必须至少具有以下 一项 权限

权限

对象

备注

以下任何一项权限:OWNERSHIP、USAGE、MONITOR 或者 OPERATE

服务

要对架构中的任何对象执行操作,需要对父数据库和架构具有 USAGE 权限。

有关创建具有指定权限集的自定义角色的说明,请参阅 创建自定义角色

有关对 安全对象 执行 SQL 操作的相应角色和权限授予的一般信息,请参阅 访问控制概述

示例

等待两分钟,让指定的作业完成(作业状态为 DONE)。

CALL my_job!spcs_wait_for('DONE', 120)
Copy

等待三分钟,让指定的服务启动(服务状态为 RUNNING)。

CALL my_service!SPCS_WAIT_FOR('RUNNING', 180)
Copy
语言: 中文