pgsql: Fix memory lifetime issues of replication slot stats.

From: Andres Freund <andres(at)anarazel(dot)de>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Fix memory lifetime issues of replication slot stats.
Date: 2021-03-17 23:24:57
Message-ID: E1lMfX7-0000f3-Tr@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Fix memory lifetime issues of replication slot stats.

When accessing replication slot stats, introduced in 98681675002d,
pgstat_read_statsfiles() reads the data into newly allocated
memory. Unfortunately the current memory context at that point is the
callers, leading to leaks and use-after-free dangers.

The fix is trivial, explicitly use pgStatLocalContext. There's some
potential for further improvements, but that's outside of the scope of
this bugfix.

No backpatch necessary, feature is only in HEAD.

Author: Andres Freund <andres(at)anarazel(dot)de>
Discussion: https://postgr.es/m/20210317230447.c7uc4g3vbs4wi32i@alap3.anarazel.de

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/5f79580ad69f6e696365bdc63bc265f45bd77211

Modified Files
--------------
contrib/test_decoding/expected/stats.out | 16 ++++++++++++++++
contrib/test_decoding/sql/stats.sql | 7 +++++++
src/backend/postmaster/pgstat.c | 6 +++++-
3 files changed, 28 insertions(+), 1 deletion(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Amit Kapila 2021-03-18 02:14:27 pgsql: Add a new GUC and a reloption to enable inserts in parallel-mode
Previous Message Tom Lane 2021-03-17 20:49:13 pgsql: Doc: remove duplicated step in RLS example.