pgsql-server: Give inet/cidr datatypes their own hash function that

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

Log Message:
-----------
Give inet/cidr datatypes their own hash function that ignores the inet vs
cidr type bit, the same as network_eq does. This is needed for hash joins
and hash aggregation to work correctly on these types. Per bug report
from Michael Fuhr, 2004-04-13.
Also, improve hash function for int8 as suggested by Greg Stark.

Modified Files:
--------------
pgsql-server/src/backend/access/hash:
hashfunc.c (r1.39 -> r1.40)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/access/hash/hashfunc.c.diff?r1=1.39&r2=1.40)
pgsql-server/src/backend/utils/adt:
network.c (r1.51 -> r1.52)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/utils/adt/network.c.diff?r1=1.51&r2=1.52)
pgsql-server/src/include/catalog:
catversion.h (r1.234 -> r1.235)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/catalog/catversion.h.diff?r1=1.234&r2=1.235)
pg_amproc.h (r1.48 -> r1.49)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/catalog/pg_amproc.h.diff?r1=1.48&r2=1.49)
pg_proc.h (r1.336 -> r1.337)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/catalog/pg_proc.h.diff?r1=1.336&r2=1.337)
pgsql-server/src/include/utils:
builtins.h (r1.242 -> r1.243)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/utils/builtins.h.diff?r1=1.242&r2=1.243)
inet.h (r1.17 -> r1.18)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/utils/inet.h.diff?r1=1.17&r2=1.18)
pgsql-server/src/test/regress/expected:
opr_sanity.out (r1.53 -> r1.54)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/test/regress/expected/opr_sanity.out.diff?r1=1.53&r2=1.54)
pgsql-server/src/test/regress/sql:
opr_sanity.sql (r1.42 -> r1.43)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/test/regress/sql/opr_sanity.sql.diff?r1=1.42&r2=1.43)

#2Bruce Momjian
bruce@momjian.us
In reply to: Tom Lane (#1)
Re: pgsql-server: Give inet/cidr datatypes their own hash

Tom, did we need to give instructions on how to fix this in 7.4.3
release notes?

---------------------------------------------------------------------------

Tom Lane wrote:

Log Message:
-----------
Give inet/cidr datatypes their own hash function that ignores the inet vs
cidr type bit, the same as network_eq does. This is needed for hash joins
and hash aggregation to work correctly on these types. Per bug report
from Michael Fuhr, 2004-04-13.
Also, improve hash function for int8 as suggested by Greg Stark.

Modified Files:
--------------
pgsql-server/src/backend/access/hash:
hashfunc.c (r1.39 -> r1.40)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/access/hash/hashfunc.c.diff?r1=1.39&r2=1.40)
pgsql-server/src/backend/utils/adt:
network.c (r1.51 -> r1.52)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/utils/adt/network.c.diff?r1=1.51&r2=1.52)
pgsql-server/src/include/catalog:
catversion.h (r1.234 -> r1.235)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/catalog/catversion.h.diff?r1=1.234&r2=1.235)
pg_amproc.h (r1.48 -> r1.49)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/catalog/pg_amproc.h.diff?r1=1.48&r2=1.49)
pg_proc.h (r1.336 -> r1.337)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/catalog/pg_proc.h.diff?r1=1.336&r2=1.337)
pgsql-server/src/include/utils:
builtins.h (r1.242 -> r1.243)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/utils/builtins.h.diff?r1=1.242&r2=1.243)
inet.h (r1.17 -> r1.18)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/utils/inet.h.diff?r1=1.17&r2=1.18)
pgsql-server/src/test/regress/expected:
opr_sanity.out (r1.53 -> r1.54)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/test/regress/expected/opr_sanity.out.diff?r1=1.53&r2=1.54)
pgsql-server/src/test/regress/sql:
opr_sanity.sql (r1.42 -> r1.43)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/test/regress/sql/opr_sanity.sql.diff?r1=1.42&r2=1.43)

---------------------------(end of broadcast)---------------------------
TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
#3Tom Lane
tgl@sss.pgh.pa.us
In reply to: Bruce Momjian (#2)
Re: pgsql-server: Give inet/cidr datatypes their own hash

Bruce Momjian <pgman@candle.pha.pa.us> writes:

Tom, did we need to give instructions on how to fix this in 7.4.3
release notes?

Only one person has complained about it so far, so I'm not that
worried. Besides, you can't retroactively change the 7.4.3 notes...

regards, tom lane