public inbox for [email protected]  
help / color / mirror / Atom feed
From: PG Bug reporting form <[email protected]>
To: [email protected]
Cc: [email protected]
Subject: BUG #18876: HINT messages for mxid wrap-around say "drop stale slots", but that may not be appropriate
Date: Fri, 04 Apr 2025 03:05:12 +0000
Message-ID: <[email protected]> (raw)

The following bug has been logged on the website:

Bug reference:      18876
Logged by:          TAKATSUKA Haruka
Email address:      [email protected]
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.

Thanks,



view thread (7+ messages)  latest in thread

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected], [email protected], [email protected]
  Subject: Re: BUG #18876: HINT messages for mxid wrap-around say "drop stale slots", but that may not be appropriate
  In-Reply-To: <[email protected]>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox