SHOW LOCKS¶
列出所有锁定资源的正在运行的事务。该命令可用于显示当前用户在其所有会话中的锁,或账户中所有用户的锁。
有关事务和资源锁定的信息,请参阅 事务。
- 另请参阅:
语法¶
SHOW LOCKS [ IN ACCOUNT ]
参数¶
IN ACCOUNT
返回账户中所有用户的所有锁。此参数仅在由具有 ACCOUNTADMIN 角色的用户(账户管理员)执行时适用。
对于所有其他角色,该函数仅显示当前用户在所有会话中的锁。
输出¶
命令输出在以下列中显示锁元数据:
列 |
描述 |
---|---|
|
完全限定的表名称或事务 ID。 |
|
|
|
事务 ID(一个有符号的 64 位整数)。 |
|
指定事务开始执行时间的时间戳。 |
|
事务的当前状态: |
|
指定获取锁的时间的时间戳。 |
|
内部/系统生成的 SQL 语句标识符。 |
|
会话 ID(仅对具有 ACCOUNTADMIN 角色的用户可见)。 |
使用说明¶
以前缀
is_
开头的列返回Y
(yes) 或N
(no)。该命令不需要正在运行的仓库即可执行。
该命令 最多 返回指定对象类型的 1 万条记录,由用于执行命令的角色的访问权限决定;即使应用了筛选器,也不会返回任何超过 1 万条限制的记录。
要查看存在超过 1 万条记录的结果,请在 Snowflake Information Schema 中查询相应的视图(如果存在)。
若要对此命令的输出进行后处理,可以使用 RESULT_SCAN 函数,该函数会将输出视为可查询的表。
命令输出包含了所有正在运行且资源被锁定的事务的 IDs。这些 IDs 可以用作 SYSTEM$ABORT_TRANSACTION 的输入,以中止指定的事务。
对于混合表,此命令仅在事务被阻止时才显示锁,或者在阻止另一个事务时显示锁。
示例¶
在本例中,一个事务持有指定标准表(resource
列中命名的表)上的锁。
SHOW LOCKS;
+---------------------------+------------+---------------------+-------------------------------+---------+-------------------------------+--------------------------------------+
| resource | type | transaction | transaction_started_on | status | acquired_on | query_id |
|---------------------------+------------+---------------------+-------------------------------+---------+-------------------------------+--------------------------------------|
| CALIBAN_DB.PUBLIC.WEATHER | PARTITIONS | 1721330303831000000 | 2024-07-18 12:18:23.831 -0700 | HOLDING | 2024-07-18 12:18:49.832 -0700 | 01b5c1c6-0002-8691-0000-a9950068a0c6 |
+---------------------------+------------+---------------------+-------------------------------+---------+-------------------------------+--------------------------------------+
在本例中,一个事务持有混合表上的行级锁。另一个事务正在等待该锁。
SHOW LOCKS;
+---------------------+------+---------------------+-------------------------------+---------+-------------+--------------------------------------+
| resource | type | transaction | transaction_started_on | status | acquired_on | query_id |
|---------------------+------+---------------------+-------------------------------+---------+-------------+--------------------------------------|
| 1721165584820000000 | ROW | 1721165584820000000 | 2024-07-16 14:33:04.820 -0700 | HOLDING | NULL | |
| 1721165584820000000 | ROW | 1721165674582000000 | 2024-07-16 14:34:34.582 -0700 | WAITING | NULL | 01b5b715-0002-852b-0000-a99500665352 |
+---------------------+------+---------------------+-------------------------------+---------+-------------+--------------------------------------+