Need to do CommandCounterIncrement after StoreAttrMissingVal.
Tom Lane <tgl@sss.pgh.pa.us>
Need to do CommandCounterIncrement after StoreAttrMissingVal. Without this, an additional change to the same pg_attribute row within the same command will fail. This is possible at least with ALTER TABLE ADD COLUMN on a multiple-inheritance-pathway structure. (Another potential hazard is that immediately-following operations might not see the missingval.) Introduced by 95f650674, which split the former coding that used a single pg_attribute update to change both atthasdef and atthasmissing/attmissingval into two updates, but missed that this should entail two CommandCounterIncrements as well. Like that fix, back-patch through v13. Reported-by: Alexander Lakhin <exclusion@gmail.com> Author: Tender Wang <tndrwang@gmail.com> Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us> Discussion: https://postgr.es/m/025a3ffa-5eff-4a88-97fb-8f583b015965@gmail.com Backpatch-through: 13
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/commands/tablecmds.c | modified | +2 −0 |
| src/test/regress/expected/inherit.out | modified | +14 −1 |
| src/test/regress/sql/inherit.sql | modified | +2 −1 |
Discussion
- bug when apply fast default mechanism for adding new column over domain with default value 15 messages · 2025-03-01 → 2025-04-02