2022_03 捆绑包¶
本主题介绍当月的以下行为变更(如果有):
已弃用的功能。
已启用的捆绑包变更。
已实现的其他非捆绑包变更。
如果您对这些变更有任何疑问,请联系 Snowflake 支持部门 (https://community.snowflake.com/s/article/How-To-Submit-a-Support-Case-in-Snowflake-Lodge)。
有关本月推出的新功能、增强功能和修复的详细信息,请参阅 2022 年 6 月。
重要
除非另有说明,否则这些变更位于 6.21 行为变更版本中默认启用的 2022_03 捆绑包中。
本主题内容:
安全变更¶
访问控制:从角色或用户撤消不存在的角色授权时出现错误消息¶
当您执行 REVOKE ROLE 命令以撤消某个用户的角色或其他角色,但该角色当前未授予给指定对象时,返回的错误消息已更改如下:
- 之前的错误消息文本:
Revoke not executed: Insufficient privileges
- 当前的错误消息文本:
Statement executed successfully
请注意,尽管有错误消息文本,但 SQL 语句是成功的。此变更有助于避免在查看查询历史记录日志时出现不必要的问题。
SQL 变更 – 常规¶
TZDB 的 2021a 版本更新¶
Snowflake 使用 Time Zone Database (TZDB) 获取时区信息(例如,用于 CONVERT_TIMEZONE 的时区名称和别名列表)。
Snowflake 更新了使用的 TZDB 版本:
- 之前:
Snowflake 使用了 TZDB 的早期版本(从 2016f 起)。
- 现在:
Snowflake 使用 TZDB 的 2021a 版本。
有关 2021a 版本 TZDB 的变更列表,请参阅 tz 数据库新闻 (https://data.iana.org/time-zones/tzdb/NEWS)。
SQL 变更 – 命令和函数¶
DESCRIBE TASK / SHOW TASKS 命令:输出中的新列¶
DESCRIBE TASK 和 SHOW TASKS 命令的输出现在包括新的 ERROR_INTEGRATION 列。为了帮助限制此变更的影响,该列已添加为输出中的最后一列。
该列显示通知集成的名称,该集成用于访问 Amazon Simple Notification Service (SNS) 以中继任务的错误通知。
SHOW TASKS 命令:输出中的新列¶
SHOW TASKS 命令的输出现在包括以下两个新列:
列名称 |
数据类型 |
描述 |
---|---|---|
LAST_COMMITTED_ON |
TIMESTAMP |
指定上次设置任务版本的时间。如果未设置版本(即,如果任务在创建后尚未恢复或手动执行),则值为 NULL。 |
LAST_SUSPENDED_ON |
TIMESTAMP |
指定上次暂停任务的时间。如果任务尚未暂停,则值为 NULL。 |
这两列都与独立任务或树中的根任务有关。树中子任务的列值为 NULL。
SHOW TASKS 命令和 TASK_DEPENDENTS 函数: PREDECESSORS / PREDECESSOR 列的变更¶
给定任务的前置任务(如果有)将在以下列中返回:
针对 SHOW TASKS 命令的输出中的 PREDECESSORS 列。
针对 TASK_DEPENDENTS 表函数的输出中的 PREDECESSOR 列(在 Information Schema 中)。
列值已更改如下:
- 之前:
该值以字符串形式返回。例如:
mydb.myschema.task1
- 现在:
该值以 JSON 数组形式返回。数组中的各个任务名称是完全限定的(即包括容器数据库和架构名称)。任务名称中的双引号使用反斜杠字符 (
\
) 进行转义。该数组包含单个值。例如:
[ "mydb.myschema.task1" ]
如果任务没有前置任务,则数组为空:
[]
。
此外, TASK_DEPENDENTS 输出中的 PREDECESSOR 列已重命名为 PREDECESSORS。
这些变更是为了支持任务的 有向无环图 (DAGs)。
SQL 变更 – 使用情况视图和 Information Schema 视图/表函数¶
GRANTS_TO_ROLES 视图 (Account Usage):返回 CREATE WAREHOUSE 权限授权¶
GRANT_TO_ROLES 视图(在 SNOWFLAKE 数据库的 ACCOUNT_USAGE 架构中)包含面向角色的现有全局 CREATE WAREHOUSE 权限授权。以前,查询视图不会返回此权限的授权。
请注意, SHOW GRANTS 命令返回 CREATE WAREHOUSE 权限的授权。
USERS 视图和 ROLES 视图 (Account Usage):添加了新列¶
以下列已添加到 USERS 和 ROLES 视图(在 SNOWFLAKE 数据库的 ACCOUNT_USAGE 架构中):
列名称 |
数据类型 |
描述 |
---|---|---|
OWNER |
VARCHAR |
指定具有对象的 OWNERSHIP 权限的角色。已添加到 USERS 和 ROLES 视图。 |
DEFAULT_SECONDARY_ROLES |
VARCHAR |
指定用户的默认辅助角色(即 ALL),如果未设置,则指定 NULL。仅添加到 USERS 视图。 |
为帮助限制此变更的影响,新列已添加为输出中的最后一列。
VIEWS 视图 (Account Usage):已添加到视图的物化视图¶
物化视图现已纳入 VIEWS 视图(在 SNOWFLAKE 数据库的 ACCOUNT_USAGE 架构中)。
以前, VIEWS 视图不包括物化视图。
数据加载变更¶
VALIDATE_UTF8 文件格式选项 – 已过时¶
VALIDATE_UTF8 文件格式选项指定是否验证以字符串列数据编码的 UTF-8 字符。此选项只是为了确保向后兼容较旧的 Snowflake 版本。由于从 2017 年年初开始该选项值默认为 TRUE,因此已强烈阻止产品文档覆盖默认设置。
此选项现已过时,尝试替换默认值时的行为已更改如下:
执行 CREATE <object>、ALTER <object> 或 COPY INTO <table> 语句(设置 VALIDATE_UTF8 = FALSE )引发用户错误。以下对象类型支持此文件格式选项:
文件格式
暂存区
表
如果该选项已在现有对象上被覆盖,则现在在加载数据时会忽略该选项。加载操作包括 UTF-8 字符编码验证。