此条目涉及一个已合并到PostgreSQL 14但随后撤回的功能。
此条目涉及一个提议的 PostgreSQL 功能,该功能在公开发布前被撤回。
pg_wait_for_backend_termination()
是一个等待后端终止的系统函数。
pg_wait_for_backend_termination()
在PostgreSQL 14中添加,但随后被撤回。
用法
pg_wait_for_backend_termination ( pid INTEGER, timeout BIGINT DEFAULT 5000 ) → BOOLEAN
当使用pg_terminate_backend()
尝试终止后端时,可能需要一段时间才能终止后端。pg_wait_for_backend_termination()
为客户端提供了一种方法来确定终止何时发生。
请注意,必须提供超时值;无法指定无限超时。
更改历史记录
示例
postgres=# SELECT pg_wait_for_backend_termination(1268106); WARNING: backend with PID 1268106 did not terminate within 5000 milliseconds pg_wait_for_backend_termination --------------------------------- f (1 row) Time: 5007.215 ms (00:05.007)
尝试确定不属于正在运行的 PostgreSQL 实例的 PID 的状态
postgres=# SELECT pg_wait_for_backend_termination(123456); WARNING: PID 123456 is not a PostgreSQL server process pg_wait_for_backend_termination --------------------------------- f (1 row)
参考
- PostgreSQL 14 文档: 服务器信号函数