0001-Fix-double-pfree-for-PgStat_StatTabEntry.patch

application/octet-stream

Filename: 0001-Fix-double-pfree-for-PgStat_StatTabEntry.patch
Type: application/octet-stream
Part: 0
Message: Fix "detected double pfree in PgStat Snapshot 0x557d9926b400" error

Patch

Same data as JSON: GET /api/v1/attachments/:id/patch the parsed metadata as JSON — format, series position, per-file stats; never the diff bytes. API reference →
Format: format-patch
Series: patch 0001
Subject: Fix double pfree for PgStat_StatTabEntry
File+
src/backend/postmaster/autovacuum.c 3 1
From 7f99c6937445481473c084bbbb9add8c918d8e00 Mon Sep 17 00:00:00 2001
From: Tender Wang <tndrwang@gmail.com>
Date: Wed, 8 Apr 2026 15:18:00 +0800
Subject: [PATCH] Fix double pfree for PgStat_StatTabEntry

---
 src/backend/postmaster/autovacuum.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/backend/postmaster/autovacuum.c b/src/backend/postmaster/autovacuum.c
index bd626a16363..9df82a4bb6a 100644
--- a/src/backend/postmaster/autovacuum.c
+++ b/src/backend/postmaster/autovacuum.c
@@ -3327,7 +3327,9 @@ relation_needs_vacanalyze(Oid relid,
 			 anltuples, anlthresh, scores->anl,
 			 scores->xid, scores->mxid);
 
-	pfree(tabentry);
+	/* We can free the entry if we're not caching it */
+	if (pgstat_fetch_consistency == PGSTAT_FETCH_CONSISTENCY_NONE)
+		pfree(tabentry);
 }
 
 /*
-- 
2.34.1