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

Re: plan time of MASSIVE partitioning ...

From: Boszormenyi Zoltan <zb(at)cybertec(dot)at>
To: Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Alvaro Herrera <alvherre(at)commandprompt(dot)com>, Stephen Frost <sfrost(at)snowman(dot)net>, Hans-Jürgen Schönig <postgres(at)cybertec(dot)at>, Robert Haas <robertmhaas(at)gmail(dot)com>, pgsql-hackers Hackers <pgsql-hackers(at)postgresql(dot)org>, Josh Berkus <josh(at)agliodbs(dot)com>
Subject: Re: plan time of MASSIVE partitioning ...
Date: 2010-10-28 10:54:59
Message-ID: (view raw, whole thread or download thread mbox)
Lists: pgsql-hackers
Boszormenyi Zoltan írta:
> Boszormenyi Zoltan írta:
>> Heikki Linnakangas írta:
>>> On 26.10.2010 18:34, Boszormenyi Zoltan wrote:
>>>> thank you very much for pointing me to dynahash, here is the
>>>> next version that finally seems to work.
>>>> Two patches are attached, the first is the absolute minimum for
>>>> making it work, this still has the Tree type for canon_pathkeys
>>>> and eq_classes got the same treatment as join_rel_list/join_rel_hash
>>>> has in the current sources: if the list grows larger than 32, a hash
>>>> table
>>>> is created. It seems to be be enough for doing in for
>>>>       get_eclass_for_sort_expr()
>>>> only, the other users of eq_classes aren't bothered by this change.
>>> That's better, but can't you use dynahash for canon_pathkeys as well?
>> Here's a purely dynahash solution. It's somewhat slower than
>> the tree version, 0.45 vs 0.41 seconds in the cached case for the
>> previously posted test case.
> And now in context diff, sorry for my affection towards unified diffs. :-)

A little better version, no need for the heavy hash_any, hash_uint32
on the lower 32 bits on pk_eclass is enough. The profiling runtime
is now 0.42 seconds vs the previous 0.41 seconds for the tree version.

Best regards,
Zoltán Böszörményi

Zoltán Böszörményi
Cybertec Schönig & Schönig GmbH
Gröhrmühlgasse 26
A-2700 Wiener Neustadt, Austria

Attachment: 9.1-planner-speedup-v7-ctxdiff.patch
Description: text/x-patch (16.9 KB)

In response to


pgsql-hackers by date

Next:From: Boszormenyi ZoltanDate: 2010-10-28 11:29:30
Subject: Re: plan time of MASSIVE partitioning ...
Previous:From: Pavel GolubDate: 2010-10-28 10:50:24
Subject: Re: add label to enum syntax

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