Skip site navigation (1) Skip section navigation (2)

full join qualifications on 8.3.1 vs. 8.3.6

From: Andrew Gierth <andrew(at)tao11(dot)riddles(dot)org(dot)uk>
To: pgsql-hackers(at)postgresql(dot)org
Subject: full join qualifications on 8.3.1 vs. 8.3.6
Date: 2009-07-21 16:27:16
Message-ID: 87d47ungrf.fsf@news-spur.riddles.org.uk (view raw or flat)
Thread:
Lists: pgsql-hackers
Given:

select * from test1 full join test2 using (a,b) where b=1;

8.3.1 and CVS HEAD produce a plan in which the b=1 condition is pushed
down into each side of the join, but 8.3.6 and 8.3.7 do not.

Is this intentional? I wasn't able to identify anything applicable in
the release notes.

testcase used:
create table test1 (a integer, b integer, c text);
create table test2 (a integer, b integer, c text);
insert into test1 select i,i,i::text from generate_series(1,10000) i;
insert into test2 select i,i,i::text from generate_series(1,10000) i;
create index test1_idx on test1 (b);
create index test2_idx on test2 (b);
explain select * from test1 full join test2 using (a,b) where b = 1;

-- 
Andrew (irc:RhodiumToad)

Responses

pgsql-hackers by date

Next:From: Alexey KlyukinDate: 2009-07-21 16:47:38
Subject: Re: errcontext support in PL/Perl
Previous:From: Tom LaneDate: 2009-07-21 16:22:29
Subject: Re: errcontext support in PL/Perl

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group