From b71b8a5adad24d44905576749fbda337ae1650bd Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Thu, 17 Sep 2026 12:41:24 +0900 Subject: [PATCH] pgstat: Add safety measure for partially initialized local reference --- src/backend/utils/activity/pgstat_shmem.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/backend/utils/activity/pgstat_shmem.c b/src/backend/utils/activity/pgstat_shmem.c index bf886b4dad86..86d7d4a7c6a9 100644 --- a/src/backend/utils/activity/pgstat_shmem.c +++ b/src/backend/utils/activity/pgstat_shmem.c @@ -839,6 +839,15 @@ pgstat_gc_entry_refs(void) Assert(!entry_ref->shared_stats || entry_ref->shared_stats->magic == 0xdeadbeef); + /* NULL shared_entry marks a partial reference */ + if (entry_ref->shared_entry == NULL) + { + Assert(entry_ref->shared_stats == NULL); + Assert(entry_ref->pending == NULL); + pgstat_release_entry_ref(ent->key, entry_ref, false); + continue; + } + /* * "generation" checks for the case of entries being reinitialized, * and "dropped" for the case where these are.. dropped. -- 2.55.0