From: Mark Kirkwood <mark.kirkwood@catalyst.net.nz>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: PGSQL Performance <pgsql-performance@postgresql.org>
Cc: Grzegorz JaĆkiewicz <gryzman@gmail.com>
Subject: Re: 8.4 optimization regression?
Date: Tue, 30 Aug 2011 10:38:55 +1200
Message-ID: <4E5C14FF.8060909@catalyst.net.nz> (raw)
In-Reply-To: <4E548A7D.6090003@catalyst.net.nz>
References: <4E5331FF.3000900@catalyst.net.nz>
<15708.1314155740@sss.pgh.pa.us>
<4E548A7D.6090003@catalyst.net.nz>
On 24/08/11 17:22, Mark Kirkwood wrote:
> On 24/08/11 15:15, Tom Lane wrote:
>>
>> Hmmm ... this is structurally a pretty simple query, so I'm surprised
>> that 8.3 and 8.4 see it very much differently. The relation-level
>> estimates and plan choices are very nearly the same; the only thing
>> that's changed much is the estimates of the join sizes, and there were
>> not that many changes in the join selectivity estimation for simple
>> inner joins. I wonder whether you are seeing a bad side-effect of this
>> patch:
>>
>> http://git.postgresql.org/gitweb/?p=postgresql.git&a=commitdiff&h=7f3eba30
>>
>>
>
> Here is what the plan looks like with that patch reversed (it is back
> to 8.3 speed too).
>
> QUERY PLAN 8.4 - 7f3eba30 (better plan snipped)
>
>
I note from the commit message that the fix test case was from Grzegorz
Jaskiewicz (antijoin against a small subset of a relation). I was not
able to find this in the archives - Grzegorz do you recall the actual
test case? I thought it might be useful for me to spend some time
studying both cases and seeing if I can come up with any tweaks that
would let both your and my queries work well!
Cheers
Mark
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-performance@postgresql.org
Cc: mark.kirkwood@catalyst.net.nz, tgl@sss.pgh.pa.us, gryzman@gmail.com
Subject: Re: 8.4 optimization regression?
In-Reply-To: <4E5C14FF.8060909@catalyst.net.nz>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox