Hello, On Fri, Oct 4, 2019 at 5:57 PM Michael Paquier <mich...@paquier.xyz> wrote: > > On Thu, Oct 03, 2019 at 09:18:12AM -0300, Alvaro Herrera wrote: > > Hmm. I wonder if we shouldn't adopt the coding pattern we've used > > elsewhere of collecting all columns to be dropped first into an > > ObjectAddresses array, then use performMultipleDeletions. > > +1. That's the common pattern these days, because that's more > performant.
Actually I don't see the peformMultipleDeletions() pattern being used for the situations where there are multiple objects to drop due to inheritance. I only see it where there are multiple objects related to one table. Maybe it's possible to apply to the inheritance situation though, but in this particular case, it seems a bit hard to do, because ATExecDropColumn steps through an inheritance tree level at a time. But maybe I misunderstood Alvaro's suggestion? > I think that the patch should have regression tests. I have added one in the attached updated patch. Thanks, Amit
ATExecDropColumn-inh-recursion-fix_v2.patch
Description: Binary data