Re: BUG #18545: \dt breaks transaction, calling error when executed in SET SESSION AUTHORIZATION

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Robert Haas <robertmhaas@gmail.com>
Cc: Андрей Рачицкий <therealgofman@mail.ru>, pgsql-bugs@lists.postgresql.org
Date: 2024-08-06T18:54:25Z
Lists: pgsql-bugs, pgsql-hackers
Robert Haas <robertmhaas@gmail.com> writes:
> On Sun, Aug 4, 2024 at 6:08 PM Tom Lane <tgl@sss.pgh.pa.us> wrote:
>> However, what the farm found is that assign_client_encoding
>> is flat-out broken.  It's ignoring the first commandment
>> for GUC hooks, which is "Thy assign hooks shalt not fail".

> Interesting. Looks like my mistake, dating to
> 10c0558ffefcd12bf1d3dc35587eba41d1ce4571. I'm honestly kind of
> surprised that nobody discovered this problem for 8 years. I would
> have expected it to cause more problems.

Yeah, it's a bit accidental that that's not reachable up to now.
Or I think it's not reachable, anyway.  If we find out differently
we can back-patch 0ae5b763e, but for now I refrained.

			regards, tom lane



Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Fix parallel worker tracking of new catalog relfilenumbers.

  2. Restore relmapper state early enough in parallel workers.

  3. Allow parallel workers to cope with a newly-created session user ID.

  4. Clean up handling of client_encoding GUC in parallel workers.

  5. Fix rd_firstRelfilenodeSubid for nailed relations, in parallel workers.

  6. Fix several mistakes around parallel workers and client_encoding.