Teodor Sigaev <teodor@sigaev.ru> writes:
> Add general purpose hasing functions to pgbench.
The 32-bit members of the buildfarm aren't very happy with this,
eg on dromedary:
cache gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels
-Wmissing-format-attribute-Wformat-security -fno-strict-aliasing -fwrapv -g -O2 -ansi -I. -I.
-I../../../src/interfaces/libpq-I../../../src/include -DCOPY_PARSE_PLAN_TREES -DRAW_EXPRESSION_COVERAGE_TEST -c -o
command.ocommand.c
pgbench.c: In function 'getHashFnv1a':
pgbench.c:945: warning: integer constant is too large for 'long' type
pgbench.c:952: warning: integer constant is too large for 'long' type
pgbench.c: In function 'getHashMurmur2':
pgbench.c:967: warning: integer constant is too large for 'long' type
pgbench.c:970: warning: integer constant is too large for 'long' type
pgbench.c:972: warning: integer constant is too large for 'long' type
pgbench.c:975: warning: integer constant is too large for 'long' type
pgbench.c:978: warning: integer constant is too large for 'long' type
Looks to me like the constants need to be written with INT64CONST().
Also, the fact that the added regression test is passing makes me
wonder whether it's actually exercising these functions meaningfully.
regards, tom lane