pg.ddx.io  pgsql-hackers@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Heikki Linnakangas <hlinnaka@iki.fi>
Cc: Joel Jacobson <joel@compiler.org>
Cc: pgsql-hackers <pgsql-hackers@postgresql.org>
Subject: Re: LISTEN/NOTIFY bug: VACUUM sets frozenxid past a xid in async queue
Date: Tue, 04 Nov 2025 09:44:28 -0500
Message-ID: <515740.1762267468@sss.pgh.pa.us> (raw)
In-Reply-To: <66213fee-00ff-4952-802d-c06454e521ac@iki.fi>
References: <DDOYDH17RU0G.1R4MKAZKP87QV@gmail.com>
	<202510221548.tgggefdrlpo3@alvherre.pgsql>
	<DDP0YT14VYUG.34K8AP6EHU2TR@gmail.com>
	<CAD21AoBKTF9SKSANX3xeXV9NjyDGYJeYEFN4duf--Tk=_exTYQ@mail.gmail.com>
	<CAE7r3MJK9irHqpZ9vfRmz-BZSjwq4oyjR4ppmaMp2g2GePf55g@mail.gmail.com>
	<DDQZBKAC1KZ4.3LT22J6Q74JV0@gmail.com>
	<CAE7r3MJgJj4D_6mPHMr-4xCrYK7q04M3jM1J_=4baphjA2WeBA@mail.gmail.com>
	<149c402d-54c9-48dd-a730-2f5b958f2129@app.fastmail.com>
	<769bbdba-f86f-44ad-abad-f6ea4f74e3f2@iki.fi>
	<2297af80-dd5d-4fcc-815b-75bd64b00bf9@app.fastmail.com>
	<2759499.1761756503@sss.pgh.pa.us>
	<6ae4acd3-6c57-4271-bc24-634fd1b11d67@iki.fi>
	<e1e4909b-66b9-43d8-8942-529b7519c758@app.fastmail.com>
	<c37cae90-0564-4798-89e1-5dfb8c6d2cba@app.fastmail.com>
	<dc6b131d-b010-401e-951e-48535bfb5861@iki.fi>
	<badd3b04-ce9f-4f29-9b42-05e5cc545058@iki.fi>
	<68079c62-2fe9-4489-b68d-3b1b911ebd59@app.fastmail.com>
	<66213fee-00ff-4952-802d-c06454e521ac@iki.fi>

Heikki Linnakangas <hlinnaka@iki.fi> writes:
> Fortunately that's easy to fix: We can move the IsListeningOn() check 
> after releasing the lock. See attached.
> The elephant in the room of course is that a lookup in a linked list is 
> O(n) and it would be very straightforward to replace it with e.g. a hash 
> table. We should do that irrespective of this bug fix. But I'm inclined 
> to do it as a separate followup patch.

There is a different patch series that's concerned with improving
NOTIFY throughput [1].  I think this one should just focus on
fixing the XID problem.

			regards, tom lane

[1] https://commitfest.postgresql.org/patch/6078/





view thread (99+ messages)  latest in thread

Message-ID: <515740.1762267468@sss.pgh.pa.us>
Permalink:  ../515740.1762267468@sss.pgh.pa.us/
Also on:    postgresql.org/message-id/515740.1762267468@sss.pgh.pa.us

 · 

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: pgsql-hackers@postgresql.org
  Cc: tgl@sss.pgh.pa.us, hlinnaka@iki.fi, joel@compiler.org
  Subject: Re: LISTEN/NOTIFY bug: VACUUM sets frozenxid past a xid in async queue
  In-Reply-To: <515740.1762267468@sss.pgh.pa.us>

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

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