Re: More speedups for tuple deformation

From: Junwang Zhao <zhjwpku(at)gmail(dot)com>
To: David Rowley <dgrowleyml(at)gmail(dot)com>
Cc: Alexander Lakhin <exclusion(at)gmail(dot)com>, Tender Wang <tndrwang(at)gmail(dot)com>, Andres Freund <andres(at)anarazel(dot)de>, John Naylor <johncnaylorls(at)gmail(dot)com>, PostgreSQL Developers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: More speedups for tuple deformation
Date: 2026-04-01 05:13:30
Message-ID: CAEG8a3KNcN38Q016sAGwXWokFjj-Niq4Sy1PuGbeFQVkOP1Y6g@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Wed, Apr 1, 2026 at 11:35 AM David Rowley <dgrowleyml(at)gmail(dot)com> wrote:
>
> On Wed, 1 Apr 2026 at 15:00, Alexander Lakhin <exclusion(at)gmail(dot)com> wrote:
> > I've also found an assertion failure:
> > SELECT JSON_ARRAY(VALUES (('', '')));
> >
> > triggers:
> > TRAP: failed Assert("attlen > 0 || attlen == -1"), File: "heaptuple.c", Line: 598, PID: 2582495
> >
> > Could you have a look, please?
>
> Thanks. Looking...

The parser transforms '' (or any cstring) into Const with UNKNOWNOID.
When building the tuple descriptor in ExecTypeFromExprList,
TupleDescInitEntry uses UNKNOWNOID to populate the attribute entry,
thus the failure in nocachegetattr.

Therefore, the assertion should be addressed by removing the pg_assume,
since this case can occur.

Just trying to learn through analysis, might be incorrect. Let's wait for
David's fix.

>
> David
>
>

--
Regards
Junwang Zhao

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bryan Green 2026-04-01 05:24:06 [PATCH] BUG: Stale LC_MESSAGES translations after SET on windows.
Previous Message Hayato Kuroda (Fujitsu) 2026-04-01 05:05:10 RE: [Proposal] Adding Log File Capability to pg_createsubscriber