On 2019/03/14 10:40, Amit Langote wrote: > On 2019/03/14 5:18, Tom Lane wrote: >> Robert Haas <robertmh...@gmail.com> writes: >>> On Wed, Mar 13, 2019 at 3:14 PM Tom Lane <t...@sss.pgh.pa.us> wrote: >>>> Meanwhile, who's going to take point on cleaning up rd_partcheck? >>>> I don't really understand this code well enough to know whether that >>>> can share one of the existing partitioning-related sub-contexts. >> >>> To your question, I think it probably can't share a context. Briefly, >>> rd_partkey can't change ever, except that when a partitioned relation >>> is in the process of being created it is briefly NULL; once it obtains >>> a value, that value cannot be changed. If you want to range-partition >>> a list-partitioned table or something like that, you have to drop the >>> table and create a new one. I think that's a perfectly acceptable >>> permanent limitation and I have no urge whatever to change it. >>> rd_partdesc changes when you attach or detach a child partition. >>> rd_partcheck is the reverse: it changes when you attach or detach this >>> partition to or from a parent. >> >> Got it. Yeah, it seems like the clearest and least bug-prone solution >> is for those to be in three separate sub-contexts. The only reason >> I was trying to avoid that was the angle of how to back-patch into 11. >> However, we can just add the additional context pointer field at the >> end of the Relation struct in v11, and that should be good enough to >> avoid ABI problems. > > Agree that rd_partcheck needs its own context as you have complained in > the past [1]. > > I think we'll need to back-patch this fix to PG 10 as well. I've attached > patches for all 3 branches. > > Thanks, > Amit > > [1] https://www.postgresql.org/message-id/22236.1523374067%40sss.pgh.pa.us
Should I add this patch to Older Bugs [1]? Thanks, Amit [1] https://wiki.postgresql.org/wiki/PostgreSQL_12_Open_Items