On Sun, Dec 22, 2019 at 4:02 AM Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Thomas Munro <thomas.munro@gmail.com> writes:
> > Yeah, I suppose it would be nice to get something reusable out of this
> > rather than a local definition only. The other important
> > characteristic is the direction of rotation, so here's a version that
> > defines pg_rotate_right32() in pg_bitutils.h. In back-branches
> > without that header we could define it locally.
>
> That looks like a good approach. One thought is that you could rely
> on BITS_PER_BYTE from c.h, rather than CHAR_BIT; then you don't have
> to #include <limits.h> in bitutils.h, which seems like header creep
> we could do without. (I think most other places that want this
> constant use BITS_PER_BYTE, too.)
Done, and pushed.
I'm hoping to look into wider hashing support which will give better
results on big joins soon, but not in time for 13.