On Fri, Dec 3, 2021 at 21:34 Amit Langote <amitlangot...@gmail.com> wrote:
> On Fri, Dec 3, 2021 at 12:37 PM Amit Kapila <amit.kapil...@gmail.com> > wrote: > > On Thu, Dec 2, 2021 at 7:18 PM Amit Langote <amitlangot...@gmail.com> > wrote: > > > On Thu, Dec 2, 2021 at 2:27 PM Amit Kapila <amit.kapil...@gmail.com> > wrote: > > > > On Thu, Dec 2, 2021 at 8:42 AM Amit Langote <amitlangot...@gmail.com> > wrote: > > > > > Reading Alvaro's email at the top again gave me a pause to > reconsider > > > > > what I had said in reply. It might indeed have been nice if the > > > > > publication DDL itself had prevented the cases where a partition > and > > > > > its ancestor are added to a publication, though as Hou-san > mentioned, > > > > > partition ATTACHes make that a bit tricky to enforce at all times, > > > > > though of course not impossible. Maybe it's okay to just > de-duplicate > > > > > pg_publication_tables output as the patch does, even though it may > > > > > appear to be a band-aid solution if we one considers Alvaro's point > > > > > about consistency. > > > > > > > > True, I think even if we consider that idea it will be a much bigger > > > > change, and also as it will be a behavioral change so we might want > to > > > > keep it just for HEAD and some of these fixes need to be backpatched. > > > > Having said that, if you or someone want to pursue that idea and come > > > > up with a better solution than what we have currently it is certainly > > > > welcome. > > > > > > Okay, I did write a PoC patch this morning after sending out my > > > earlier email. I polished it a bit, which is attached. > > > > I see multiple problems with this patch and idea. > > Thanks for looking at it. Yeah, I have not looked very closely at ALL > TABLES [IN SCHEMA], though only because I suspected that those cases > deal with partitioning in such a way that the partition duplication > issue doesn't arise. That is, only the FOR TABLE list_of_tables and > ADD TABLE syntax allow for the duplication issue to occur. Another thing I forgot to mention is that the patch passes check-world. Perhaps we don’t have enough tests that would’ve exposed any problems with the patch’s approach. -- Amit Langote EDB: http://www.enterprisedb.com