From: | "Marc G(dot) Fournier" <scrappy(at)postgresql(dot)org> |
---|---|
To: | Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us> |
Cc: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Greg Sabino Mullane <greg(at)turnstep(dot)com>, pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: LEFT JOIN used in psql describe.c |
Date: | 2005-05-10 23:14:55 |
Message-ID: | 20050510201339.T6493@ganymede.hub.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Tue, 10 May 2005, Bruce Momjian wrote:
> Bruce Momjian wrote:
>> Tom Lane wrote:
>>> "Greg Sabino Mullane" <greg(at)turnstep(dot)com> writes:
>>>>> Does anyone know why so many LEFT JOINs are used in psql/describe.c to
>>>>> join to the pg_namespace table, like here:
>>>
>>>> Yes, pg_relnamespace is definitely not null. I've actually already removed
>>>> the left joins from my \df patch, since I had to rewrite some of the
>>>> queries anyway. If this is wrong, please let me know of course!
>>>
>>> I think the idea was to be certain to show every pg_proc entry (or other
>>> catalog for other \d commands), no matter how badly broken the catalog
>>> interrelationships might be. If there's not an unarguable reason
>>> for eliminating the left joins I'd be inclined to keep it like that.
>>> What does an inner join buy here, other than brittleness?
>>>
>>> (Yeah, I have the perspective of a developer who deals with broken
>>> situations every day. So?)
>>
>> If we have problems with the system catalogs, I don't see how this join
>> has a high probability of catching the problem. If there was some known
>> problem of the join not always working, I could see the use of LEFT
>> JOIN, but there isn't, so it just seems confusing, and these queries are
>> used by others as models of how to do system joins, so could confuse our
>> users as well.
>>
>> I think the LEFT JOIN should be removed unless there is a known problem,
>> and if one shows up, we can re-add them later.
>
> I still think that the LEFT JOINs used in psql system queries is
> confusing and perhaps adds performance overhead while adding little
> reliability, but no one else seems to think so so I will drop the idea.
I'm a bit confused here, but I believe Tom (at least how I read it) was
agreeing with you about pulling the LEFT JOIN out ... "I think the LEFT
JOIN should be removed unless there is a known problem, and if one shows
up, we can re-add them later." ... or am I mis-quoting?
----
Marc G. Fournier Hub.Org Networking Services (http://www.hub.org)
Email: scrappy(at)hub(dot)org Yahoo!: yscrappy ICQ: 7615664
From | Date | Subject | |
---|---|---|---|
Next Message | Palle Girgensohn | 2005-05-11 00:06:45 | --enable-thread-safety? |
Previous Message | Michael Glaesemann | 2005-05-10 23:09:50 | Re: Views, views, views: Summary of Arguments |