# F.32.pg_外科手术

F.32.1.功能F.32.2.作者

这个PGU手术该模块提供了各种功能,可以对受损亲属进行手术。这些函数在设计上是不安全的,使用它们可能会损坏(或进一步损坏)数据库。例如,这些函数可以很容易地用来使一个表与其自身的索引不一致,从而导致唯一的外键违反约束,甚至使元组可见,读取元组时会导致数据库服务器崩溃。使用时应非常谨慎,并且只能作为最后手段。

# F.32.1.功能

heap_force_kill(regclass,tid[])返回void

堆(堆)力(堆)杀(堆)在不检查元组的情况下,将“使用过的”线指针标记为“死”。此函数的预期用途是强制删除无法访问的元组。例如:

test=> select * from t1 where ctid = '(0, 1)';
ERROR:  could not access status of transaction 4007513275
DETAIL:  Could not open file "pg_xact/0EED": No such file or directory.

test=# select heap_force_kill('t1'::regclass, ARRAY['(0, 1)']::tid[]);
 heap_force_kill
### F.32.2. Authors

 Ashutosh Sharma `<[ashu.coek88@gmail.com](mailto:ashu.coek88@gmail.com)>`