diff options
author | Andres Freund <andres@anarazel.de> | 2024-04-07 19:00:11 -0700 |
---|---|---|
committer | Andres Freund <andres@anarazel.de> | 2024-04-07 19:09:02 -0700 |
commit | 974374dcd394c80f37e20b692b7d8b122aa8ed33 (patch) | |
tree | 484d1fa010ecee0a231db68fb2635484d5a889ca | |
parent | a690920015bddc9c20f93d1a828c53ac3c21e489 (diff) | |
download | postgresql-974374dcd394c80f37e20b692b7d8b122aa8ed33.tar.gz postgresql-974374dcd394c80f37e20b692b7d8b122aa8ed33.zip |
simplehash: Free collisions array in SH_STAT
While SH_STAT() is only used for debugging, the allocated array can be large,
and therefore should be freed.
It's unclear why coverity started warning now.
Reported-by: Tom Lane <tgl@sss.pgh.pa.us>
Reported-by: Coverity
Discussion: https://postgr.es/m/3005248.1712538233@sss.pgh.pa.us
Backpatch: 12-
-rw-r--r-- | src/include/lib/simplehash.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/include/lib/simplehash.h b/src/include/lib/simplehash.h index b7adc16b807..1dc817ac8d9 100644 --- a/src/include/lib/simplehash.h +++ b/src/include/lib/simplehash.h @@ -1101,6 +1101,9 @@ SH_STAT(SH_TYPE * tb) max_collisions = curcoll; } + /* large enough to be worth freeing, even if just used for debugging */ + pfree(collisions); + if (tb->members > 0) { fillfactor = tb->members / ((double) tb->size); |