Re: Hash joins vs small-integer join values

From: Gregory Stark <stark(at)enterprisedb(dot)com>
To: "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: <pgsql-hackers(at)postgreSQL(dot)org>, "Joseph Shraibman" <jks(at)selectacast(dot)net>
Subject: Re: Hash joins vs small-integer join values
Date: 2007-06-01 03:51:43
Message-ID: 87zm3kxrg0.fsf@oxford.xeocode.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers


"Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us> writes:

> The best idea I can come up with for the back branches is
> to make ExecHashGetBucketAndBatch do hash_any internally, say

hashany of a 4-byte value degenerates to pretty much just a call to mix().
Perhaps we should just expose a hash12() that takes three integers and calls
mix() on them like hash_any does.

The reason I'm thinking that is that we'll want to do the same thing for
bigint, float4, float8, etc.

And that fix you committed a while back to improve the catcache hash function
made a huge difference. Now I'm wondering if it shouldn't just be invoking
hash_any() or mix() too.

--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2007-06-01 04:00:55 Re: Hash joins vs small-integer join values
Previous Message Josh Berkus 2007-06-01 03:47:49 Re: Hash joins vs small-integer join values