Re: Reject access to unlogged tables in contrib modules

From: surya poondla <suryapoondla4(at)gmail(dot)com>
To: Jim Jones <jim(dot)jones(at)uni-muenster(dot)de>
Cc: Michael Paquier <michael(at)paquier(dot)xyz>, Kirill Reshke <reshkekirill(at)gmail(dot)com>, Postgres hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, Zsolt Parragi <zsolt(dot)parragi(at)percona(dot)com>
Subject: Re: Reject access to unlogged tables in contrib modules
Date: 2026-11-06 19:43:30
Message-ID: CAOVWO5qX6rBpJXcfXxcJ=3-VAfWWXA2-GPtOwnscROG+=qFX2w@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi Jim,

I tested v5 on top of 510512876f9 with a primary/standby pair. Both
patches apply cleanly, build without warnings, and the pageinspect and
pgstattuple regression tests pass. On the standby, every pageinspect
and pgstattuple entry point I tried reports the recovery error for
unlogged relations, the init fork of an unlogged index is still
readable, and the detoast cases behave as in v4. On the primary,
other-session temp relations are still rejected, and pg_relpages() still
works for them.

One behavior change worth noting is with the relkind check in
check_relation_accessible(), pgstatindex() and pgstattuple() on a
temporary index of another session now report "cannot access temporary
indexes of other sessions" instead of "... tables ...", which seems more
accurate to me.

On pg_freespacemap, I agree with Michael's point, without an FSM fork, 0 is
also what the owning session sees, and with one, the other-session case
already fails in bufmgr. Dropping 0006 is fine.

Overall v5 looks good to me.

Regards,
Surya Poondla

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2026-11-06 19:47:52 Draft back-branch release notes are up
Previous Message Nikhil Sontakke 2026-11-06 19:08:38 Re: [***DKIM violation***] Re: [PATCH] Fix JSON_SERIALIZE() coercion placeholder type for jsonb input