Re: plan time of MASSIVE partitioning ...
Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>
From: Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>
To: Boszormenyi Zoltan <zb@cybertec.at>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, Alvaro Herrera <alvherre@commandprompt.com>, Stephen Frost <sfrost@snowman.net>, Hans-Jürgen Schönig <postgres@cybertec.at>, Robert Haas <robertmhaas@gmail.com>, pgsql-hackers Hackers <pgsql-hackers@postgresql.org>, Josh Berkus <josh@agliodbs.com>
Date: 2010-10-28T11:35:23Z
Lists: pgsql-hackers
Attachments
- per-eclass-canon-pathkeys.patch (text/x-diff) patch
On 28.10.2010 13:54, Boszormenyi Zoltan wrote: > 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. Actually, I wonder if we could just have a separate canon_pathkeys list for each EquivalenceClass, instead of one big list in PlannerInfo. I'm not too familiar with equivalence classes and all that, but the attached patch at least passes the regressions. I haven't done any performance testing, but I would expect this to be even faster than the hashtable or tree implementations, and a lot simpler. -- Heikki Linnakangas EnterpriseDB http://www.enterprisedb.com