pgsql: Tweak dynahash.c to avoid wasting memory space in non-shared hash

Started by Tom Laneabout 20 years ago1 messagescomitters
Jump to latest
#1Tom Lane
tgl@sss.pgh.pa.us

Log Message:
-----------
Tweak dynahash.c to avoid wasting memory space in non-shared hash tables.
palloc() will normally round allocation requests up to the next power of 2,
so make dynahash choose allocation sizes that are as close to a power of 2
as possible.
Back-patch to 8.1 --- the problem exists further back, but a much larger
patch would be needed and it doesn't seem worth taking any risks.

Modified Files:
--------------
pgsql/src/backend/utils/hash:
dynahash.c (r1.67 -> r1.68)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/hash/dynahash.c.diff?r1=1.67&r2=1.68)
pgsql/src/include/utils:
hsearch.h (r1.42 -> r1.43)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/utils/hsearch.h.diff?r1=1.42&r2=1.43)