分区应该在删除之前分离吗?

Should a partition be detached before dropping?

我正在使用 PostgreSQL 12,其中有一个分区 table。此 table 有需要删除的旧分区。我看过旧分区首先分离然后才删除的代码:

ALTER TABLE partitioned_table DETACH PARTITION partitioned_table_1;
DROP TABLE partitioned_table_1;

是否有任何理由在删除之前分离分区?只删除一个分区而不分离对数据库的其他查询的影响吗?

来自手册。

  • DROP TABLE partitioned_table_1;表示掉落table。 ACCESS EXCLUSIVE 锁定父 table。

  • ALTER TABLE partitioned_table DETACH PARTITION partitioned_table_1; 意味着 partitioned_table_1 将仍然存在。 ACCESS EXCLUSIVE 锁定父 table

The detached partition continues to exist as a standalone table, but no longer has any ties to the table from which it was detached.

在 postgresql 14 中,DETACH PARTITION partitioned_table_1 CONCURRENTLY 共享更新独占 锁定父 table。 更多信息:https://www.postgresql.org/docs/12/sql-altertable.html
https://www.postgresql.org/docs/current/sql-altertable.html#SQL-ALTERTABLE-DETACH-PARTITION https://www.postgresql.org/docs/current/ddl-partitioning.html