Move src/backend/utils/hash/hashfn.c to src/common
authorRobert Haas <rhaas@postgresql.org>
Thu, 27 Feb 2020 03:55:41 +0000 (09:25 +0530)
committerRobert Haas <rhaas@postgresql.org>
Thu, 27 Feb 2020 03:55:41 +0000 (09:25 +0530)
This also involves renaming src/include/utils/hashutils.h, which
becomes src/include/common/hashfn.h. Perhaps an argument can be
made for keeping the hashutils.h name, but it seemed more
consistent to make it match the name of the file, and also more
descriptive of what is actually going on here.

Patch by me, reviewed by Suraj Kharage and Mark Dilger. Off-list
advice on how not to break the Windows build from Davinder Singh
and Amit Kapila.

Discussion: http://postgr.es/m/CA+TgmoaRiG4TXND8QuM6JXFRkM_1wL2ZNhzaUKsuec9-4yrkgw@mail.gmail.com

39 files changed:
contrib/citext/citext.c
contrib/hstore/hstore_op.c
contrib/pg_stat_statements/pg_stat_statements.c
contrib/sepgsql/uavc.c
src/backend/access/common/tupdesc.c
src/backend/access/hash/hashfunc.c
src/backend/access/tablesample/bernoulli.c
src/backend/access/tablesample/system.c
src/backend/commands/async.c
src/backend/executor/execGrouping.c
src/backend/lib/bloomfilter.c
src/backend/lib/dshash.c
src/backend/nodes/bitmapset.c
src/backend/nodes/tidbitmap.c
src/backend/partitioning/partbounds.c
src/backend/storage/file/sharedfileset.c
src/backend/tsearch/ts_typanalyze.c
src/backend/utils/adt/acl.c
src/backend/utils/adt/date.c
src/backend/utils/adt/jsonb_gin.c
src/backend/utils/adt/jsonb_util.c
src/backend/utils/adt/mac.c
src/backend/utils/adt/mac8.c
src/backend/utils/adt/network.c
src/backend/utils/adt/numeric.c
src/backend/utils/adt/rangetypes.c
src/backend/utils/adt/tid.c
src/backend/utils/adt/uuid.c
src/backend/utils/adt/varchar.c
src/backend/utils/adt/varlena.c
src/backend/utils/cache/catcache.c
src/backend/utils/hash/Makefile
src/backend/utils/hash/dynahash.c
src/backend/utils/resowner/resowner.c
src/common/Makefile
src/common/hashfn.c [moved from src/backend/utils/hash/hashfn.c with 99% similarity]
src/include/access/hash.h
src/include/common/hashfn.h [moved from src/include/utils/hashutils.h with 97% similarity]
src/tools/msvc/Mkvcbuild.pm

index a4adafe89588ff8c9c3b12ca5bf23e371df24493..df139462a65da4557b583599e44d19e53eb965e3 100644 (file)
@@ -4,9 +4,9 @@
 #include "postgres.h"
 
 #include "catalog/pg_collation.h"
+#include "common/hashfn.h"
 #include "utils/builtins.h"
 #include "utils/formatting.h"
-#include "utils/hashutils.h"
 #include "utils/varlena.h"
 
 PG_MODULE_MAGIC;
index 01e59beaa3020f744704d74493926fea22d1fc4a..fb1bb0681cca55dd794fc48b249b1bc3547fe035 100644 (file)
@@ -5,10 +5,10 @@
 
 #include "access/htup_details.h"
 #include "catalog/pg_type.h"
+#include "common/hashfn.h"
 #include "funcapi.h"
 #include "hstore.h"
 #include "utils/builtins.h"
-#include "utils/hashutils.h"
 #include "utils/memutils.h"
 
 /* old names for C functions */
index e0dbeebde3d8aba20e3a9a6bb6f2fa9147df2d2b..e4fda4b4049fae4b6e93733679ac78c95e9f3103 100644 (file)
@@ -62,6 +62,7 @@
 #include <unistd.h>
 
 #include "catalog/pg_authid.h"
+#include "common/hashfn.h"
 #include "executor/instrument.h"
 #include "funcapi.h"
 #include "mb/pg_wchar.h"
@@ -77,7 +78,6 @@
 #include "tcop/utility.h"
 #include "utils/acl.h"
 #include "utils/builtins.h"
-#include "utils/hashutils.h"
 #include "utils/memutils.h"
 
 PG_MODULE_MAGIC;
index d3723768a6635bdde95f744073afa60e72af1c66..639a52c5567b0d69171fb1a549db56ac4f3e96f5 100644 (file)
 
 #include "catalog/pg_proc.h"
 #include "commands/seclabel.h"
+#include "common/hashfn.h"
 #include "sepgsql.h"
 #include "storage/ipc.h"
 #include "utils/guc.h"
-#include "utils/hashutils.h"
 #include "utils/memutils.h"
 
 /*
index 00bb4cb53d9476894d8846fe73e5eb227533890d..28835512f0089243dca2d9ed9946c60293263c87 100644 (file)
 #include "access/tupdesc_details.h"
 #include "catalog/pg_collation.h"
 #include "catalog/pg_type.h"
+#include "common/hashfn.h"
 #include "miscadmin.h"
 #include "parser/parse_type.h"
 #include "utils/acl.h"
 #include "utils/builtins.h"
 #include "utils/datum.h"
-#include "utils/hashutils.h"
 #include "utils/resowner_private.h"
 #include "utils/syscache.h"
 
index 5b517106ff427e71ec64b7ce32d6bc7a85047389..a8498226e32d742142975af780d5ce6aa64401d9 100644 (file)
@@ -28,8 +28,8 @@
 
 #include "access/hash.h"
 #include "catalog/pg_collation.h"
+#include "common/hashfn.h"
 #include "utils/builtins.h"
-#include "utils/hashutils.h"
 #include "utils/pg_locale.h"
 
 /*
index 46016fb5de6a2dd6b7aedd0f1c2f13079782e852..606730d6cbe85785c7f0af3cde0daf299274ff40 100644 (file)
@@ -28,9 +28,9 @@
 
 #include "access/tsmapi.h"
 #include "catalog/pg_type.h"
+#include "common/hashfn.h"
 #include "optimizer/optimizer.h"
 #include "utils/builtins.h"
-#include "utils/hashutils.h"
 
 
 /* Private state */
index 8a5f03bfd3e01055931de19075807ba6e16bb6f0..29b7c0d3c284d926d6d2b80a75cf3c03e815e3b7 100644 (file)
@@ -29,9 +29,9 @@
 #include "access/relscan.h"
 #include "access/tsmapi.h"
 #include "catalog/pg_type.h"
+#include "common/hashfn.h"
 #include "optimizer/optimizer.h"
 #include "utils/builtins.h"
-#include "utils/hashutils.h"
 
 
 /* Private state */
index 9aa2b61600e04715f47b1622a1fd65d76abdc362..dae939a4ab8f9d8c4d0004d7986b69bd40fe6b51 100644 (file)
 #include "access/xact.h"
 #include "catalog/pg_database.h"
 #include "commands/async.h"
+#include "common/hashfn.h"
 #include "funcapi.h"
 #include "libpq/libpq.h"
 #include "libpq/pqformat.h"
 #include "storage/sinval.h"
 #include "tcop/tcopprot.h"
 #include "utils/builtins.h"
-#include "utils/hashutils.h"
 #include "utils/memutils.h"
 #include "utils/ps_status.h"
 #include "utils/snapmgr.h"
index de0205f4fcdcd902c611eaaccebbd16089555f87..f6c3e4cbde4ff67dfdec977f8c356424b89f838c 100644 (file)
@@ -19,9 +19,9 @@
 #include "postgres.h"
 
 #include "access/parallel.h"
+#include "common/hashfn.h"
 #include "executor/executor.h"
 #include "miscadmin.h"
-#include "utils/hashutils.h"
 #include "utils/lsyscache.h"
 #include "utils/memutils.h"
 
index 29b62e70e41089995422e6db005304852525a7f0..f040e83c01629e149148dff344ea6aaaff9b36e9 100644 (file)
@@ -35,9 +35,9 @@
 
 #include <math.h>
 
+#include "common/hashfn.h"
 #include "lib/bloomfilter.h"
 #include "port/pg_bitutils.h"
-#include "utils/hashutils.h"
 
 #define MAX_HASH_FUNCS         10
 
index 5e0167d9b0801ae4ad2e2f08c95b91470fa8c36a..78ccf03217fe154e1608706bcca61c7157d414f3 100644 (file)
 
 #include "postgres.h"
 
+#include "common/hashfn.h"
 #include "lib/dshash.h"
 #include "storage/ipc.h"
 #include "storage/lwlock.h"
 #include "utils/dsa.h"
-#include "utils/hashutils.h"
 #include "utils/memutils.h"
 
 /*
index f711e6c69953b64def86738197e627d2e8ad49b0..2719ea45a3eb52ceab008f522699568299d8bbf4 100644 (file)
  */
 #include "postgres.h"
 
+#include "common/hashfn.h"
 #include "nodes/bitmapset.h"
 #include "nodes/pg_list.h"
 #include "port/pg_bitutils.h"
-#include "utils/hashutils.h"
 
 
 #define WORDNUM(x)     ((x) / BITS_PER_BITMAPWORD)
index e102589e7460c1cf9fbdb2abb25c1a4fdd99d837..ad4e071ca3b567d4ff7af50337dc26fc05f14c34 100644 (file)
 #include <limits.h>
 
 #include "access/htup_details.h"
+#include "common/hashfn.h"
 #include "nodes/bitmapset.h"
 #include "nodes/tidbitmap.h"
 #include "storage/lwlock.h"
 #include "utils/dsa.h"
-#include "utils/hashutils.h"
 
 /*
  * The maximum number of tuples per page is not large (typically 256 with
index 54eb83a0d1ac99e4d7740dff60621d8efc10109f..35953f23facafb82a276e166c92d44907f8fcf53 100644 (file)
@@ -21,6 +21,7 @@
 #include "catalog/pg_inherits.h"
 #include "catalog/pg_type.h"
 #include "commands/tablecmds.h"
+#include "common/hashfn.h"
 #include "executor/executor.h"
 #include "miscadmin.h"
 #include "nodes/makefuncs.h"
@@ -32,7 +33,6 @@
 #include "utils/builtins.h"
 #include "utils/datum.h"
 #include "utils/fmgroids.h"
-#include "utils/hashutils.h"
 #include "utils/lsyscache.h"
 #include "utils/partcache.h"
 #include "utils/ruleutils.h"
index 6666a25521f385110b87e961a7bc0ac758b34ca6..f7206c9175f38d1c4ed2eeafd7462c7fa5276ee0 100644 (file)
 
 #include "catalog/pg_tablespace.h"
 #include "commands/tablespace.h"
+#include "common/hashfn.h"
 #include "miscadmin.h"
 #include "storage/dsm.h"
 #include "storage/sharedfileset.h"
 #include "utils/builtins.h"
-#include "utils/hashutils.h"
 
 static void SharedFileSetOnDetach(dsm_segment *segment, Datum datum);
 static void SharedFileSetPath(char *path, SharedFileSet *fileset, Oid tablespace);
index 24c6479f6153d0a6c3dbd2be650bad7ede404bda..2eed0cd137c5e12a7a187e6e610cd398edec1d35 100644 (file)
@@ -16,9 +16,9 @@
 #include "catalog/pg_collation.h"
 #include "catalog/pg_operator.h"
 #include "commands/vacuum.h"
+#include "common/hashfn.h"
 #include "tsearch/ts_type.h"
 #include "utils/builtins.h"
-#include "utils/hashutils.h"
 
 
 /* A hash key for lexemes */
index cc4170efbf260ea9f4036b793256aa208c2dafce..bce1f1e0b16cc5137556d1517363218d532bf4e7 100644 (file)
@@ -26,6 +26,7 @@
 #include "commands/dbcommands.h"
 #include "commands/proclang.h"
 #include "commands/tablespace.h"
+#include "common/hashfn.h"
 #include "foreign/foreign.h"
 #include "funcapi.h"
 #include "lib/qunique.h"
@@ -34,7 +35,6 @@
 #include "utils/array.h"
 #include "utils/builtins.h"
 #include "utils/catcache.h"
-#include "utils/hashutils.h"
 #include "utils/inval.h"
 #include "utils/lsyscache.h"
 #include "utils/memutils.h"
index 393ee991b06e0f9931b6df3e3d461261478fe68b..0c55b68fbf63181191e7b7a93c3a5abc52d8ae17 100644 (file)
@@ -21,6 +21,7 @@
 #include <time.h>
 
 #include "access/xact.h"
+#include "common/hashfn.h"
 #include "libpq/pqformat.h"
 #include "miscadmin.h"
 #include "nodes/supportnodes.h"
@@ -29,7 +30,6 @@
 #include "utils/builtins.h"
 #include "utils/date.h"
 #include "utils/datetime.h"
-#include "utils/hashutils.h"
 #include "utils/sortsupport.h"
 
 /*
index 72a88121d5ac49fbc5ea7f4c310dad3f75e47021..63122edf2e4c49c10e2312dce667b5833210fb18 100644 (file)
@@ -63,9 +63,9 @@
 #include "access/stratnum.h"
 #include "catalog/pg_collation.h"
 #include "catalog/pg_type.h"
+#include "common/hashfn.h"
 #include "miscadmin.h"
 #include "utils/builtins.h"
-#include "utils/hashutils.h"
 #include "utils/jsonb.h"
 #include "utils/jsonpath.h"
 #include "utils/varlena.h"
index edec657cd3ceaadfc3e26e3dd6d4a1057f9cf4bd..04b70c805b44a220a60a1f9363cb0b08702d29f0 100644 (file)
 
 #include "catalog/pg_collation.h"
 #include "catalog/pg_type.h"
+#include "common/hashfn.h"
 #include "common/jsonapi.h"
 #include "miscadmin.h"
 #include "utils/builtins.h"
 #include "utils/datetime.h"
-#include "utils/hashutils.h"
 #include "utils/json.h"
 #include "utils/jsonb.h"
 #include "utils/memutils.h"
index f9eb0b57d8b8d17abe3cb93486e2b09a4c0972a8..8aeddc686326cd4fe3260be0d5a1718774ff1a34 100644 (file)
 
 #include "postgres.h"
 
+#include "common/hashfn.h"
 #include "lib/hyperloglog.h"
 #include "libpq/pqformat.h"
 #include "port/pg_bswap.h"
 #include "utils/builtins.h"
 #include "utils/guc.h"
-#include "utils/hashutils.h"
 #include "utils/inet.h"
 #include "utils/sortsupport.h"
 
index 571eee920fdc05d9c6c7002e821a9d78dc50850b..b7b2968b926c9e15f2019e16bde2e64f1a443304 100644 (file)
@@ -21,9 +21,9 @@
 
 #include "postgres.h"
 
+#include "common/hashfn.h"
 #include "libpq/pqformat.h"
 #include "utils/builtins.h"
-#include "utils/hashutils.h"
 #include "utils/inet.h"
 
 /*
index a6dd8b75aa279520f8af446349c028af1b098266..0ab54316f8eaf2dcebbe779fee0fe6355e452a23 100644 (file)
@@ -15,6 +15,7 @@
 #include "access/stratnum.h"
 #include "catalog/pg_opfamily.h"
 #include "catalog/pg_type.h"
+#include "common/hashfn.h"
 #include "common/ip.h"
 #include "lib/hyperloglog.h"
 #include "libpq/libpq-be.h"
@@ -26,7 +27,6 @@
 #include "utils/builtins.h"
 #include "utils/fmgroids.h"
 #include "utils/guc.h"
-#include "utils/hashutils.h"
 #include "utils/inet.h"
 #include "utils/lsyscache.h"
 #include "utils/sortsupport.h"
index c92ad5a4fe06318df431bfefae5a35e0fa313464..bd00f23b9464e189775592a14ff457cc2cdba58f 100644 (file)
@@ -27,6 +27,7 @@
 #include <math.h>
 
 #include "catalog/pg_type.h"
+#include "common/hashfn.h"
 #include "common/int.h"
 #include "funcapi.h"
 #include "lib/hyperloglog.h"
@@ -38,7 +39,6 @@
 #include "utils/builtins.h"
 #include "utils/float.h"
 #include "utils/guc.h"
-#include "utils/hashutils.h"
 #include "utils/int8.h"
 #include "utils/numeric.h"
 #include "utils/sortsupport.h"
index 639e1dad6c2b3e0c02e75b6ae30a386731e26837..b95132b714869d260b611d6f284ba4d1eee9163f 100644 (file)
 #include "postgres.h"
 
 #include "access/tupmacs.h"
+#include "common/hashfn.h"
 #include "lib/stringinfo.h"
 #include "libpq/pqformat.h"
 #include "miscadmin.h"
 #include "utils/builtins.h"
 #include "utils/date.h"
-#include "utils/hashutils.h"
 #include "utils/int8.h"
 #include "utils/lsyscache.h"
 #include "utils/rangetypes.h"
index fad20577543781ab634cb3651f6512e4f79d4eba..4ce8375eab70fb2eb6ca521a59942b4c1b2e9da9 100644 (file)
 #include "access/tableam.h"
 #include "catalog/namespace.h"
 #include "catalog/pg_type.h"
+#include "common/hashfn.h"
 #include "libpq/pqformat.h"
 #include "miscadmin.h"
 #include "parser/parsetree.h"
 #include "utils/acl.h"
 #include "utils/builtins.h"
-#include "utils/hashutils.h"
 #include "utils/rel.h"
 #include "utils/snapmgr.h"
 #include "utils/varlena.h"
index 4abd861dd72a4ad93e981c542fb6b11bcf64d8ae..c906ee789d92fba1bc670ac9b84e3a57228a7baf 100644 (file)
 
 #include "postgres.h"
 
+#include "common/hashfn.h"
 #include "lib/hyperloglog.h"
 #include "libpq/pqformat.h"
 #include "port/pg_bswap.h"
 #include "utils/builtins.h"
 #include "utils/guc.h"
-#include "utils/hashutils.h"
 #include "utils/sortsupport.h"
 #include "utils/uuid.h"
 
index 1e1239a1ba9402575136af6bc8c63d0d0af99da7..39acfdff6c1d905ad544cf37d05d11dab82e384a 100644 (file)
 #include "access/detoast.h"
 #include "catalog/pg_collation.h"
 #include "catalog/pg_type.h"
+#include "common/hashfn.h"
 #include "libpq/pqformat.h"
 #include "mb/pg_wchar.h"
 #include "nodes/nodeFuncs.h"
 #include "nodes/supportnodes.h"
 #include "utils/array.h"
 #include "utils/builtins.h"
-#include "utils/hashutils.h"
 #include "utils/lsyscache.h"
 #include "utils/pg_locale.h"
 #include "utils/varlena.h"
index 875b02d64394b07afd14d914e6183454f53c72fa..18900e0f1ea56ebe001bef3a5d1579de2f5353b5 100644 (file)
@@ -20,6 +20,7 @@
 #include "access/detoast.h"
 #include "catalog/pg_collation.h"
 #include "catalog/pg_type.h"
+#include "common/hashfn.h"
 #include "common/int.h"
 #include "lib/hyperloglog.h"
 #include "libpq/pqformat.h"
@@ -29,7 +30,6 @@
 #include "regex/regex.h"
 #include "utils/builtins.h"
 #include "utils/bytea.h"
-#include "utils/hashutils.h"
 #include "utils/lsyscache.h"
 #include "utils/memutils.h"
 #include "utils/pg_locale.h"
index 64776e3209213ef0279f9b962e8e963bf6fcff42..3613ae5f44d3d2ad1b8b603afe7605a614207e06 100644 (file)
@@ -24,6 +24,7 @@
 #include "catalog/pg_collation.h"
 #include "catalog/pg_operator.h"
 #include "catalog/pg_type.h"
+#include "common/hashfn.h"
 #include "miscadmin.h"
 #ifdef CATCACHE_STATS
 #include "storage/ipc.h"               /* for on_proc_exit */
@@ -32,7 +33,6 @@
 #include "utils/builtins.h"
 #include "utils/datum.h"
 #include "utils/fmgroids.h"
-#include "utils/hashutils.h"
 #include "utils/inval.h"
 #include "utils/memutils.h"
 #include "utils/rel.h"
index fc7b165f7fc55b5b6b6544d22c633001dc6b09f1..d4c1210e36faf06a1d502fa2a73dcc2f3a4fa6a9 100644 (file)
@@ -14,7 +14,6 @@ include $(top_builddir)/src/Makefile.global
 
 OBJS = \
        dynahash.o \
-       hashfn.o \
        pg_crc.o
 
 include $(top_srcdir)/src/backend/common.mk
index d245e1aa12ceeb8e7cea732b69fc2a3d00c861ff..b5381958e70bc84fd55dbf35cf7eabd16033b420 100644 (file)
 #include <limits.h>
 
 #include "access/xact.h"
+#include "common/hashfn.h"
 #include "storage/shmem.h"
 #include "storage/spin.h"
 #include "utils/dynahash.h"
-#include "utils/hashutils.h"
 #include "utils/memutils.h"
 
 
index ac6f226f59f3999b9040538e6f0c914a808226a1..3c39e48825a8d24cc07d507488158e1be924451d 100644 (file)
  */
 #include "postgres.h"
 
+#include "common/hashfn.h"
 #include "jit/jit.h"
 #include "storage/bufmgr.h"
 #include "storage/ipc.h"
 #include "storage/predicate.h"
 #include "storage/proc.h"
-#include "utils/hashutils.h"
 #include "utils/memutils.h"
 #include "utils/rel.h"
 #include "utils/resowner_private.h"
index ab98f4faafb0bf8aa77a449e60ab984b82b25bed..ce01df68b975ec3ba4d4e2e29d235c2663774c9f 100644 (file)
@@ -54,6 +54,7 @@ OBJS_COMMON = \
        exec.o \
        f2s.o \
        file_perm.o \
+       hashfn.o \
        ip.o \
        jsonapi.o \
        keywords.o \
similarity index 99%
rename from src/backend/utils/hash/hashfn.c
rename to src/common/hashfn.c
index ecc52014afbce9d83decbe4254369bfdaff26559..990f18e610b8cccb6f73729a00037e1503eb41ef 100644 (file)
@@ -10,7 +10,7 @@
  *
  *
  * IDENTIFICATION
- *       src/backend/utils/hash/hashfn.c
+ *       src/common/hashfn.c
  *
  * NOTES
  *       It is expected that every bit of a hash function's 32-bit result is
@@ -23,7 +23,7 @@
  */
 #include "postgres.h"
 
-#include "utils/hashutils.h"
+#include "common/hashfn.h"
 
 
 /*
index 9fc0696096afe02dcb6109c325242ab1b98c6e9f..2707e1924b9b7a564a100c91a98cc451ed25a879 100644 (file)
 #include "access/itup.h"
 #include "access/sdir.h"
 #include "catalog/pg_am_d.h"
+#include "common/hashfn.h"
 #include "lib/stringinfo.h"
 #include "storage/bufmgr.h"
 #include "storage/lockdefs.h"
-#include "utils/hashutils.h"
 #include "utils/hsearch.h"
 #include "utils/relcache.h"
 
similarity index 97%
rename from src/include/utils/hashutils.h
rename to src/include/common/hashfn.h
index ba3ecb7592561a641817ff0baad7e13994928ff6..6ecc864f840ec89ff3280ceb151452398982416b 100644 (file)
@@ -4,8 +4,8 @@
  * Portions Copyright (c) 2017-2020, PostgreSQL Global Development Group
  */
 
-#ifndef HASHUTILS_H
-#define HASHUTILS_H
+#ifndef HASHFN_H
+#define HASHFN_H
 
 
 /*
@@ -101,4 +101,4 @@ murmurhash32(uint32 data)
        return h;
 }
 
-#endif                                                 /* HASHUTILS_H */
+#endif                                                 /* HASHFN_H */
index 727a8fdec9b28492179ce4b8c25ee66868f5dd9d..834c2c39d18bf4072c70c90764c55feb3162fb25 100644 (file)
@@ -120,7 +120,7 @@ sub mkvcbuild
 
        our @pgcommonallfiles = qw(
          base64.c config_info.c controldata_utils.c d2s.c encnames.c exec.c
-         f2s.c file_perm.c ip.c jsonapi.c
+         f2s.c file_perm.c hashfn.c ip.c jsonapi.c
          keywords.c kwlookup.c link-canary.c md5.c
          pg_lzcompress.c pgfnames.c psprintf.c relpath.c rmtree.c
          saslprep.c scram-common.c string.c stringinfo.c unicode_norm.c username.c