diff options
| author | Tom Lane | 2025-08-02 23:43:53 +0000 |
|---|---|---|
| committer | Tom Lane | 2025-08-03 01:59:46 +0000 |
| commit | 7f6ededa764b287ba593a2bb7fd566df8053213e (patch) | |
| tree | ada62ee844caa2ee85aa3e17eccb5e8522177641 /src/tools | |
| parent | 2c7b4ad24dda86a73d80df063e9a56c3ecb1e4bb (diff) | |
Suppress complaints about leaks in TS dictionary loading.
Like the situation with function cache loading, text search
dictionary loading functions tend to leak some cruft into the
dictionary's long-lived cache context. To judge by the examples in
the core regression tests, not very many bytes are at stake.
Moreover, I don't see a way to prevent such leaks without changing the
API for TS template initialization functions: right now they do not
have to worry about making sure that their results are long-lived.
Hence, I think we should install a suppression rule rather than trying
to fix this completely. However, I did grab some low-hanging fruit:
several places were leaking the result of get_tsearch_config_filename.
This seems worth doing mostly because they are inconsistent with other
dictionaries that were freeing it already.
Author: Tom Lane <tgl@sss.pgh.pa.us>
Reviewed-by: Andres Freund <andres@anarazel.de>
Discussion: https://postgr.es/m/285483.1746756246@sss.pgh.pa.us
Diffstat (limited to 'src/tools')
| -rw-r--r-- | src/tools/valgrind.supp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/tools/valgrind.supp b/src/tools/valgrind.supp index fad20c8f708..3880007dfb3 100644 --- a/src/tools/valgrind.supp +++ b/src/tools/valgrind.supp @@ -215,3 +215,15 @@ ... fun:cached_function_compile } + +# Suppress complaints about stuff leaked during TS dictionary loading. +# Not very much is typically lost there, and preventing it would +# require a risky API change for TS tmplinit functions. +{ + hide_ts_dictionary_leaks + Memcheck:Leak + match-leak-kinds: definite,possible,indirect + + ... + fun:lookup_ts_dictionary_cache +} |
