类别:

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

服务

Operating on an object in a schema requires at least one privilege on the parent database and at least one privilege on the parent schema.

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

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

示例

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

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

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

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