Re: BUG #14764: #if HASH_DEBUG source in dynahash.c is fault.

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: twodragon72@gmail.com
Cc: pgsql-bugs@postgresql.org
Date: 2017-08-02T16:04:35Z
Lists: pgsql-bugs
twodragon72@gmail.com writes:
> dynahash.c

> #if HASH_DEBUG
> 	fprintf(stderr,
> "init_htab:\n%s%p\n%s%ld\n%s%ld\n%s%d\n%s%ld\n%s%u\n%s%x\n%s%x\n%s%ld\n%s%ld\n",
> 			"TABLE POINTER   ", hashp,
> 			"DIRECTORY SIZE  ", hctl->dsize,
> 			"SEGMENT SIZE    ", hctl->ssize,
> 			"SEGMENT SHIFT   ", hctl->sshift,
> 			"FILL FACTOR     ", hctl->ffactor,
> 			"MAX BUCKET      ", hctl->max_bucket,
> 			"HIGH MASK       ", hctl->high_mask,
> 			"LOW  MASK       ", hctl->low_mask,
> 			"NSEGS           ", hctl->nsegs,
> 			"NENTRIES        ", hash_get_num_entries(hctl));
> #endif


> ", hash_get_num_entries(hctl));
> ->
> ", hash_get_num_entries(hashp));

Hm, yeah, that's broken, but I'm inclined to remove that field from the
printout rather than fix the computation.  Since we just initialized the
hashtable, it can't possibly have any entries here.  Also
hash_get_num_entries makes assumptions that we could do without in
debug code.

			regards, tom lane


Commits

  1. Remove broken and useless entry-count printing in HASH_DEBUG code.