Reject degenerate SPLIT PARTITION with DEFAULT partition
Alexander Korotkov <akorotkov@postgresql.org>
Author:
Alexander Korotkov <akorotkov@postgresql.org>
Date: 2026-05-20T11:32:57Z
Releases:
19 (unreleased)
Reject degenerate SPLIT PARTITION with DEFAULT partition ALTER TABLE ... SPLIT PARTITION allows a DEFAULT partition to be created as one of the replacement partitions when the parent table does not already have one. However, it should not allow the degenerate case where a non-DEFAULT partition keeps exactly the same bound as the split partition and the command merely adds a DEFAULT partition through the SPLIT PARTITION path. Detect that case by comparing the bound of the split partition with the bound of the only non-DEFAULT replacement partition, and raise an error when they are the same. Users should add a DEFAULT partition directly with CREATE TABLE ... PARTITION OF ... DEFAULT or ALTER TABLE ... ATTACH PARTITION ... DEFAULT instead. Author: Chao Li <lic@highgo.com> Reviewed-by: Alexander Korotkov <aekorotkov@gmail.com> Discussion: https://postgr.es/m/C18878AB-DEB2-4A61-9995-A035DD644B81@gmail.com
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/partitioning/partbounds.c | modified | +150 −0 |
| src/test/regress/expected/partition_split.out | modified | +59 −0 |
| src/test/regress/sql/partition_split.sql | modified | +52 −0 |
Discussion
- Fix SPLIT PARTITION bound-overlap bug and other improvements 20 messages · 2026-05-13 → 2026-05-25