Re: pointless check in RelationBuildPartitionDesc
Alvaro Herrera <alvherre@2ndquadrant.com>
From: Alvaro Herrera <alvherre@2ndquadrant.com>
To: Amit Langote <Langote_Amit_f8@lab.ntt.co.jp>
Cc: Michael Paquier <michael@paquier.xyz>, Pg Hackers <pgsql-hackers@postgresql.org>
Date: 2018-09-04T04:08:34Z
Lists: pgsql-hackers
On 2018-Sep-04, Amit Langote wrote: > On 2018/09/04 10:19, Michael Paquier wrote: > > On Tue, Sep 04, 2018 at 09:47:07AM +0900, Amit Langote wrote: > >> On 2018/09/04 6:39, Alvaro Herrera wrote: > >>> After looking, it seems that this is just self-inflicted pain: for some > >>> reason, we store the pg_inherits row for a partition, and immediately > >>> afterwards compute and store its partition bound, which requires the > >>> above hack. But if we do things in the opposite order, this is no > >>> longer needed. I propose to remove it, as in the attached patch. > >> > >> +1. I remember having facepalmed at this before and had also written a > >> patch but never got around to submitting it. > > > > Ok, I see. It seems to me that this could be replaced by an > > elog(ERROR), as relispartition ought to be set anyway. This way any > > future callers would get things done in the correct order. > > Converting it to elog(ERROR, ...) might be a good idea. I think it'd be pointless noise. If we really want to protect against that, I think we should promote the Assert for relpartbound's isnull flag into an if test. -- Álvaro Herrera https://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
Commits
-
Simplify partitioned table creation vs. relcache
- 52ab02d593e9 11.0 landed
- 2fbdf1b38bc5 12.0 landed