Re: Hash partitioning, what function is used to compute the hash?

From: Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at>
To: Dennis Ryan <dennisr1963(at)outlook(dot)com>, "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org>
Subject: Re: Hash partitioning, what function is used to compute the hash?
Date: 2020-05-11 16:28:16
Message-ID: 6b2c633b1a8e5479bcaf1e9c25a901884af1bffd.camel@cybertec.at
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Mon, 2020-05-11 at 04:33 +0000, Dennis Ryan wrote:
> Regarding hash partitioning, what is the function/algorithm that is used to compute the hash for the partition key? I need to write a query like
>
> “SELECT unknown_partition_hash_function(id) AS hash_value, COUNT(id) AS number_of_records
> FROM existing_table
> GROUP BY 1”

To find the function that PostgreSQL uses to hash a data type,
try something like

SELECT amp.amproc,
amp.amproclefttype::regtype
FROM pg_amproc AS amp
JOIN pg_opfamily AS opf ON amp.amprocfamily = opf.oid
JOIN pg_am ON opf.opfmethod = pg_am.oid
WHERE pg_am.amname = 'hash'
AND amp.amprocnum = 1;

Yours,
Laurenz Albe
--
+43-670-6056265
Cybertec Schönig & Schönig GmbH
Gröhrmühlgasse 26, A-2700 Wiener Neustadt
Web: https://www.cybertec-postgresql.com

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Peter Devoy 2020-05-11 16:55:49 Enforcing uniqueness on [real estate/postal] addresses
Previous Message Matthias Apitz 2020-05-11 16:24:52 Re: PostgreSQL client hangs sometimes on 'EXEC SQL PREPARE sid_sisisinst FROM :select_anw;'