Re: [GENERAL] Performance of full outer join in 8.3

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Christian Schröder <cs(at)deriva(dot)de>
Cc: pgsql-hackers(at)postgreSQL(dot)org
Subject: Re: [GENERAL] Performance of full outer join in 8.3
Date: 2009-04-15 16:34:12
Message-ID: 12408.1239813252@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general pgsql-hackers

I wrote:
> =?ISO-8859-1?Q?Christian_Schr=F6der?= <cs(at)deriva(dot)de> writes:
>> This is the query:
>> select isin from ts_frontend.attachment_isins full OUTER JOIN
>> ts_frontend.rec_isins using (attachment,isin) WHERE attachment=2698120
>> GROUP BY isin limit 1000;

> Hmm. It seems 8.3 is failing to push the attachment=2698120 condition
> down to the input relations. Not sure why. All that code got massively
> rewritten in 8.3, but I thought it still understood about pushing
> equalities through a full join ...

On further review, this did work in 8.3 when released. I think it got
broken here:

http://archives.postgresql.org/pgsql-committers/2008-06/msg00336.php

because that change is preventing the "mergedvar = constant" clause from
being seen as an equivalence, when it should be seen as one. Need to
think about a tighter fix for the bug report that prompted that change.

regards, tom lane

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Janning Vygen 2009-04-15 16:42:13 Re: Problem with invalid byte sequence and log_min_error_statement
Previous Message Joshua D. Drake 2009-04-15 15:55:31 Re: need information

Browse pgsql-hackers by date

  From Date Subject
Next Message Alvaro Herrera 2009-04-15 16:55:51 missing translation marker
Previous Message Martijn van Oosterhout 2009-04-15 16:21:18 Re: Unicode support