From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Peter Geoghegan <pg(at)bowt(dot)ie> |
Cc: | Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Fixing findDependentObjects()'s dependency on scan order (regressions in DROP diagnostic messages) |
Date: | 2019-01-19 00:24:18 |
Message-ID: | 16266.1547857458@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Peter Geoghegan <pg(at)bowt(dot)ie> writes:
> On Fri, Jan 18, 2019 at 3:34 PM Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>> Attached is a draft patch to sort objects before the recursion step
>> in findDependentObjects. I found that sorting by descending OID is
>> really the right thing; if we sort by increasing OID then we get a
>> whole lot more diffs in the DROP CASCADE output. As shown, there
>> are just a few such diffs, and many of them seem to be for the better
>> anyway.
> This reminds me of the output that I saw back when my patch used DESC
> heap TID order. I agree that those regression test changes are
> improvements. I think that they're caused by the existing nbtree
> code's preference for storing duplicates on the first leaf page it
> could go on that is found to be empty.
Yeah, I figured the explanation for the weirder changes was somewhere
around there. Like you, I haven't bothered to verify it.
>> * There is still instability in which object you get told to drop
>> when attempting to drop an index partition or trigger, as a consequence
>> of there being two possible DEPENDENCY_INTERNAL_AUTO targets. I still
>> feel that the right fix there involves changing the design for what
>> dependency types we store, but I've not worked on it yet.
> I thought that your ALTER OBJECT DEPENDS ON EXTENSION example made the
> case for fixing that directly inarguable. I'm slightly surprised that
> you're not fully convinced of this already. Have I missed some
> subtlety?
It's clear that we must change *something* in that area. I'm not yet
wedded to a particular fix, just expressing a guess as to what might
be the cleanest fix.
Also, we evidently need something we can back-patch into v11, which might
end up being very far from clean :-(. I have no opinions yet on what
would make sense in that branch.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Robert Haas | 2019-01-19 00:57:03 | Re: Protect syscache from bloating with negative cache entries |
Previous Message | Michael Paquier | 2019-01-19 00:08:27 | Re: pgsql: Restrict the use of temporary namespace in two-phase transaction |