Re: 回复: Fix segfault while accessing half-initialized hash table in pgstat_shmem.c - Mailing list pgsql-hackers

From Michael Paquier
Subject Re: 回复: Fix segfault while accessing half-initialized hash table in pgstat_shmem.c
Date
Msg-id aLuIw2LsAAuSFjp2@paquier.xyz
Whole thread Raw
In response to Re: 回复: Fix segfault while accessing half-initialized hash table in pgstat_shmem.c  (Rider <oceanustz@gmail.com>)
List pgsql-hackers
On Thu, Sep 04, 2025 at 03:49:19PM +0800, Rider wrote:
> And, the PG_RE_THROW() within the PG_CATCH block causes a non-local jump,
> immediately aborting the current execution path to handle the error at a
> higher level. This guarantees that the code following PG_END_TRY is
> unreachable in the error scenario.

Please see details in utils/elog.h, if you want to study this area of
the code of course.  There is a large portion about volatile variables
and compiler expectations which is also very interested to know about.
And that's useful if you write your own extension code, outside of the
core Postgres code.
--
Michael

Attachment

pgsql-hackers by date:

Previous
From: Michael Paquier
Date:
Subject: Re: 回复: Fix segfault while accessing half-initialized hash table in pgstat_shmem.c
Next
From: Michael Paquier
Date:
Subject: Re: pg_upgrade: transfer pg_largeobject_metadata's files when possible