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

Started by Nonameover 8 years ago2 messagesbugs
Jump to latest
#1Noname
twodragon72@gmail.com

The following bug has been logged on the website:

Bug reference: 14764
Logged by: Choi Doo-Won
Email address: twodragon72@gmail.com
PostgreSQL version: 9.6.3
Operating system: CentOS
Description:

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));

--
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Noname (#1)
Re: BUG #14764: #if HASH_DEBUG source in dynahash.c is fault.

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

--
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs