Re: PostgreSQL 18 beta1 - Segmentation fault on custom type casting

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

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Thomas Thai <thomas.t.thai@gmail.com>
Cc: pgsql-bugs@lists.postgresql.org
Date: 2025-07-10T14:55:13Z
Lists: pgsql-bugs
Thomas Thai <thomas.t.thai@gmail.com> writes:
> PostgreSQL 18 beta crashes with a segmentation fault when casting strings
> to custom types. The crash occurs specifically in PostgreSQL's type-casting
> system, not in extension code.

The reason you're having a problem is that this is not a valid way to
store a custom type.  The representation has to be a single blob of
memory [1], and it has to be represented in a way that lets
type-independent code determine its length.  Typically that means
following the varlena-header rules.

			regards, tom lane

[1] Well, there is a notion of an "expanded" representation that
doesn't have to be a flat blob.  But you're not following the
rules for that either.