| From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
|---|---|
| To: | Robert Haas <robertmhaas(at)gmail(dot)com> |
| Cc: | pgsql-hackers(at)postgresql(dot)org |
| Subject: | Re: WIP patch for parameterized inner paths |
| Date: | 2012-01-26 20:06:38 |
| Message-ID: | 21615.1327608398@sss.pgh.pa.us |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Robert Haas <robertmhaas(at)gmail(dot)com> writes:
> On Thu, Jan 26, 2012 at 2:27 PM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>> I've implemented this idea, recast a bit to prevent generating a
>> parameterized join path in the first place unless it depends on a
>> parameter from a relation for which there's a join ordering constraint
>> still outstanding. It seems to get us to where the planning time
>> penalty is only about 10%, which frankly is probably less than sampling
>> error considering the small set of test cases I'm looking at.
> Awesome. If you can post the updated patch, I'll poke at it a little
> more and see if anything jumps out at me, but that sounds promising.
Attached is what I have right now. When you suggested the above,
I was in the middle of recasting the join cost functions along the lines
I suggested previously (ie, second phase re-uses work from the first),
so in the attached, cost_nestloop is done "right" but merge and hash
are still using duplicative coding. We might shave another percent or
two once that work is complete, but I don't expect it to change the
behavior otherwise.
This is against git head from Tuesday, though I think none of the more
recent commits touched the planner.
regards, tom lane
| Attachment | Content-Type | Size |
|---|---|---|
| parameterized-paths-3.patch.gz | application/octet-stream | 80.9 KB |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Noah Misch | 2012-01-26 20:20:39 | Re: 16-bit page checksums for 9.2 |
| Previous Message | Robert Haas | 2012-01-26 19:48:54 | Re: WIP patch for parameterized inner paths |