| From: | Fujii Masao <masao(dot)fujii(at)gmail(dot)com> |
|---|---|
| To: | harukat(at)sraoss(dot)co(dot)jp, pgsql-bugs(at)lists(dot)postgresql(dot)org |
| Subject: | Re: BUG #18876: HINT messages for mxid wrap-around say "drop stale slots", but that may not be appropriate |
| Date: | 2026-06-11 03:31:28 |
| Message-ID: | CAHGQGwFKngUKWOM=N3sAOGCL95TjQf2jM8E3put7=cmGKHHg0A@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-bugs |
On Fri, Apr 4, 2025 at 10:30 PM PG Bug reporting form
<noreply(at)postgresql(dot)org> wrote:
>
> The following bug has been logged on the website:
>
> Bug reference: 18876
> Logged by: TAKATSUKA Haruka
> Email address: harukat(at)sraoss(dot)co(dot)jp
> PostgreSQL version: 17.4
> Operating system: any
> Description:
>
> In src/backend/access/transam/multixact.c, there are the following hint
> messages:
>
> "Execute a database-wide VACUUM in that database.\n"
> "You might also need to commit or roll back old prepared transactions, or
> drop stale replication slots."
>
> "To avoid MultiXactId assignment failures, execute a database-wide VACUUM
> in that database.\n"
> "You might also need to commit or roll back old prepared transactions, or
> drop stale replication slots."
>
> I think that their "drop stale replication slots" is not appropriate.
>
> Because NewRelminMxid is determined by GetOldestMultiXactId() and its
> comment says:
> * Return the oldest MultiXactId that's still possibly still seen as live
> by
> * any running transaction. Older ones might still exist on disk, but
> they no
> * longer have any running member transaction.
>
> Thus, the presence of an old mxid in a tuple pending removal by a slot is
> not considered to affect it.
>
> In addition, as far as I have tested, leaving the old inactive replication
> slot does not cause mxid_age(relminmxid) not to decrease after VACUUM.
I think you're right. So I prepared and attached a patch that refines
the MXID wraparound hint messages. The patch also updates the
documentation to clarify the relationship between replication slots and
MXID wraparound.
Thought?
Regards,
--
Fujii Masao
| Attachment | Content-Type | Size |
|---|---|---|
| v1-0001-PG16-Refine-MultiXact-wraparound-hints.txt | text/plain | 5.6 KB |
| v1-0001-Refine-MultiXact-wraparound-hints.patch | application/octet-stream | 6.0 KB |
| v1-0001-PG15_PG14-Refine-MultiXact-wraparound-hints.txt | text/plain | 4.9 KB |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | TAKATSUKA Haruka | 2026-06-11 04:29:10 | Re: BUG #18876: HINT messages for mxid wrap-around say "drop stale slots", but that may not be appropriate |
| Previous Message | Michael Paquier | 2026-06-11 01:48:30 | Re: [PATCH] contrib/xml2: backend crash in xpath_nodeset() on the namespace axis |