Re: Column/type dependency recording inconsistencies

From: Petr Jelinek <petr(at)2ndquadrant(dot)com>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Column/type dependency recording inconsistencies
Date: 2014-11-10 13:16:38
Message-ID: 5460BAB6.3040401@2ndquadrant.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 09/11/14 23:36, Petr Jelinek wrote:
> On 09/11/14 23:04, Tom Lane wrote:
>>
>> I suspect this is actually a bug in the dependency search logic in DROP.
>> Don't have the energy to chase it right now though.
>>
>
> Yes that's where I started searching also and yes it is. The actual
> situation is that the columns of the table that is about to be dropped
> are normally not added to the object list that is used for dependency
> checks (if the table is going to be dropped who cares about what column
> depends on anyway).
> But this logic depends on the fact that the columns that belong to that
> table are processed after the table was already processed, however as
> the new type was added after the table was added, it's processed before
> the table and because of the dependency between type and columns, the
> columns are also processed before the table and so they are added to the
> object list for further dependency checking.
>
> See use and source of object_address_present_add_flags in dependency.c.
>

So here is what I came up with to fix this. It's quite simple and works
well enough, we don't really have any regression test that would hit
this though.

I wonder if the object_address_present_add_flags should be renamed since
it does bit more than what name suggests at this point.

And I think this should be backpatched to all the versions with
extension support.

--
Petr Jelinek http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services

Attachment Content-Type Size
remove_subobjs_from_deplist-v0.patch text/x-diff 1.2 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Robert Haas 2014-11-10 13:19:30 Re: group locking: incomplete patch, just for discussion
Previous Message Robert Haas 2014-11-10 13:03:17 Re: [v9.5] Custom Plan API