Re: doc fail about ALTER TABLE ATTACH re. NO INHERIT
Alvaro Herrera <alvherre@alvh.no-ip.org>
From: Alvaro Herrera <alvherre@alvh.no-ip.org>
To: Amit Langote <amitlangote09@gmail.com>
Cc: Pg Hackers <pgsql-hackers@lists.postgresql.org>, Robert Haas <robertmhaas@gmail.com>
Date: 2024-11-07T17:54:44Z
Lists: pgsql-hackers
On 2024-Nov-07, Amit Langote wrote: > On Wed, Nov 6, 2024 at 9:34 PM Alvaro Herrera <alvherre@alvh.no-ip.org> wrote: > > Oh, hmm, that makes sense I guess. Still, while this restriction makes > > sense for inheritance, it doesn't IMO for partitioned tables. I would > > even suggest that we drop enforcement of this restriction during ATTACH. > > I agree. Since leaf partitions have no children to propagate > constraints to, the NO INHERIT mark shouldn't matter. And partitioned > partitions already disallow NO INHERIT constraints as you mentioned. > > Do you think we should apply something like the attached at least in > the master? I found that a similar restriction exists in the CREATE > TABLE PARTITION OF path too. Yeah, that sounds reasonable. I didn't look at the code in detail, but I'm not sure I understand why you'd change CREATE TABLE PARTITION OF, since the point is that this restriction would apply when you attach a table that already exists, not when you create a new table. Maybe I misunderstand what you're saying though. > +1 Thanks, pushed. > Though if we decide to apply the attached, does the note "not marked > NO INHERIT" become unnecessary? Yes -- I think your patch would have to remove it again. A short-lived note for sure, but I thought it was better to have all branches in the same state, and now you can modify master. -- Álvaro Herrera PostgreSQL Developer — https://www.EnterpriseDB.com/
Commits
-
doc: Reword ALTER TABLE ATTACH restriction on NO INHERIT constraints
- f56a01ebdbd5 18.0 landed
- f534e38914eb 13.17 landed
- e2b5693c6cf2 17.1 landed
- d291e819be0c 15.9 landed
- 6f4524729ca2 16.5 landed
- 477830c1cb94 12.21 landed
- 344ac149cfdf 14.14 landed
-
Implement table partitioning.
- f0e44751d717 10.0 cited
-
Disallow merging ONLY constraints in children tables
- 3b11247aadf8 9.2.0 cited