Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wCHzo-001pyI-0g for pgsql-bugs@arkaria.postgresql.org; Mon, 13 Apr 2026 14:10:36 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wCHzm-007ERI-1x for pgsql-bugs@arkaria.postgresql.org; Mon, 13 Apr 2026 14:10:35 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wCHzm-007ERA-1C for pgsql-bugs@lists.postgresql.org; Mon, 13 Apr 2026 14:10:35 +0000 Received: from mail-yx1-xb134.google.com ([2607:f8b0:4864:20::b134]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wCHzl-00000000oGr-1QGI for pgsql-bugs@lists.postgresql.org; Mon, 13 Apr 2026 14:10:34 +0000 Received: by mail-yx1-xb134.google.com with SMTP id 956f58d0204a3-651b4d09141so2182751d50.1 for ; Mon, 13 Apr 2026 07:10:33 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1776089432; cv=none; d=google.com; s=arc-20240605; b=blwFZOBtDBpvQAbN1yh6/V6T3gWg6QIBnZ55UoOcuOF89CCV5wpsTDYfDix1MyXM3y zSdRMtj/OWVo4R9/c9ARs/KBqoFD5fMnlQBwYy9KyvAAy3zXkzbMIIEnH+qrHc9cIxgj +NCAPpSltgn0qURQdpNZtqm6sr+lpaUnNXeAiZCs5OiwMAi6ZtFsF/nzMWtaPIKya92F 8RiDRgfZLWXm0fXoopspPC4EQo0yNwPWPP2wYCx4vRrsd1gyRSxJELz5eDP1Js48u37m FjpDGVMZZuvXLPnzCduDYTPH1L4rsvy3XpKO45jtt0lwfwtMb76mVKpqYqbyuza+csPj EGuw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=to:subject:message-id:date:from:references:in-reply-to:mime-version :dkim-signature; bh=ywkMt47J2GlSbQOd06xRmb3FCy1SZ9bPpcW7Xr0GY6M=; fh=xQx0RIEz3oaO5SZsNiyHjRosJl3LFDCwc5Dt4ABJAu8=; b=Uo54hf7vuCffMq4zt3a97kHfK+HguINw6JFQU14KRr1FAzRBX8tJeJ/AoVvs4L4Rum S3CoZkNfIXM7DPgww9hIS5LHPp6OqvIle5+74KViTT6lfYkfwsr34yIoMWexwyIp0Ahr RJr29nCLik4pjwgE5CVJM5pcXCGi935TINjfhVJ7Lt0kSV6lvgucbVaU5alUnMovkGZQ U+oEsqSmAHo8KNn3I3nnUDjvqH/iqhkIVZE7w9r0x+WFrLf8uILzEXAgi0fPW0AoKn2+ AppilQ547Erh2Cb74BySKPXUmwqgEiK3W09x+liTF5qqkPVxaJiZuHgaZycz9of4LsFj I+HA==; darn=lists.postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1776089432; x=1776694232; darn=lists.postgresql.org; h=to:subject:message-id:date:from:references:in-reply-to:mime-version :from:to:cc:subject:date:message-id:reply-to; bh=ywkMt47J2GlSbQOd06xRmb3FCy1SZ9bPpcW7Xr0GY6M=; b=G4R86d71V65Io/y3ylIstMOj3zf3rPnEB4NrlmWYN99tm9B+xm+eF8SrxoDZBaDrWG RiQmJ2t4P1339Vvgu/NcjC8jckeWTAoOhaTcsWN+dTvys82jbmcfcUFZK4365B2D0PAy 0NTZBTF4Tvqn3JYewzxqh34HVO/WsLsDReNPzZKE8S7VwnuuPJwns6UGVsndiYkded27 ZJhVYtU9fyz1ARcXLEW95IJYAYRza9rr/POZXheHPcmw2VBw4vmP3OEfzi7zDs4AVslc u+ImmEUoHm417Zd1LwHG9GwEw3H+dss1Tgg4yw5aNd0JIZdAOWthgliSBrMbTe4z7boy HHgA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776089432; x=1776694232; h=to:subject:message-id:date:from:references:in-reply-to:mime-version :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=ywkMt47J2GlSbQOd06xRmb3FCy1SZ9bPpcW7Xr0GY6M=; b=D6+R+MMaVrVcCVGa048ngGxMMGUyF8yKxrAysK0ed515BW+S8rr6FGqfGM2f2kAc4q xUWdD47SGQw1t6J94Gsorvx22GxT3DcMSX6+APQU4ltbdltGMKlMKrKkEi4N6pBuXuHx KaRsQcQQqP/YoIMO59rLITCDWPo5ndsPoMnXE3chefd8Rw2QvvLywJr6TOWlcL07I2pl MWPL4tA3Ad61MXcI0EBiyiQuRoJYs7U55l6KwtkE0ZPqMJDiN8BqfC9qbKdYyuQJOLR+ 8qHGFzgZ7Z9arXUOPXw0EeOoNJQ0/lwODSYC+ByIByl3aJO6/0WO29H4X+bGccXazltv 0aew== X-Forwarded-Encrypted: i=1; AFNElJ8ECs7HwoJw9I0aMoQpApKMCLmMbFULUDYfrsgJZEciggnrGtHhP0AXB06tjD70FjyoTp5HWmJfQXzi@lists.postgresql.org X-Gm-Message-State: AOJu0Yx+niLKsJl/hKsfDFMfwc6YrpK4mwoEfFC2yKMQXkllfxb+8aZU 0HcVmnukSFKaW3cU2GSlZrGcR3E+kJRU4D6h11uYmcdVYnXPLDPZuUCDjJcgqKM7M6BsfcWhsT5 gnFdhHGulYyusK7ZwdqVKlIJZlX96dmc= X-Gm-Gg: AeBDiesak/fBq7SPtoCi4QENfrgcrwKXiUCzpKSe2P+K9IQlaFLr4T9lsHYQqKf4pqL oi8lps++LSLDXBuZvFFnFLdF+do9SDvtuhK2Qw+el3H6aoYTH03fmZcO0VxOTL+mDEBgWo8o8Vo 6rIsVGe5UgLD9oSrd4tvpVn2R6DI88LxdcYdbpEsclwESUON8qjD+rkD+NIQN0/429Lb7ZgXT0x B4VE5yNFRcPC5Q2VmbLJ9G3Tjn8pqyj9kjqU55elA3EGab6nehmFDzUynYcCwUZU0s0CmxfdGGR Ni21+sM= X-Received: by 2002:a05:690e:190b:b0:651:8944:c0fd with SMTP id 956f58d0204a3-6518944f31fmr13298695d50.20.1776089430973; Mon, 13 Apr 2026 07:10:30 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a05:6174:e4ca:10b0:514:9ebb:d08e with HTTP; Mon, 13 Apr 2026 07:10:29 -0700 (PDT) In-Reply-To: <19454-98a60db746b6dd22@postgresql.org> References: <19454-98a60db746b6dd22@postgresql.org> From: "David G. Johnston" Date: Mon, 13 Apr 2026 07:10:29 -0700 X-Gm-Features: AQROBzANenMk7403GrVDXziio9SMl14bRTlKNs4DqOYAOnNO0eZKkDclJNfSB60 Message-ID: Subject: Re: BUG #19454: PL/pgSQL mishandling jsonb attribute reference To: "ma.sao@msa.hinet.net" , "pgsql-bugs@lists.postgresql.org" Content-Type: multipart/alternative; boundary="0000000000009f5efd064f580bc3" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --0000000000009f5efd064f580bc3 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Sunday, April 12, 2026, PG Bug reporting form wrote: > The following bug has been logged on the website: > > Bug reference: 19454 > Logged by: CN Liou > Email address: ma.sao@msa.hinet.net > PostgreSQL version: 18.3 > Operating system: Linux Debian Bookworm > Description: > > v_payload :=3D v_payload || tj->'delta'; -- The problematic line > --v_payload :=3D (SELECT v_payload || (tj->'delta')); --This avoi= ds > the issue. > I=E2=80=99m not following. The problematic line above is indeed annoying b= ut it=E2=80=99s not a bug. Operator precedence is behaving as documented. The second line (wrapping tj->=E2=80=99delta=E2=80=99 with parentheses) is simply the neces= sary way to write many expressions involving the =E2=80=9C->=E2=80=9D-like json[b] oper= ators. David J. --0000000000009f5efd064f580bc3 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Sunday, April 12, 2026, PG Bug reporting form <noreply@postgresql.org> wrote:
The following bug has been logged on the website:

Bug reference:=C2=A0 =C2=A0 =C2=A0 19454
Logged by:=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 CN Liou
Email address:=C2=A0 =C2=A0 =C2=A0 = ma.sao@msa.hinet.net
PostgreSQL version: 18.3
Operating system:=C2=A0 =C2=A0Linux Debian Bookworm
Description:=C2=A0 =C2=A0 =C2=A0 =C2=A0

=C2=A0 =C2=A0 =C2=A0 =C2=A0 v_payload :=3D v_payload || tj->'del= ta'; -- The problematic line
=C2=A0 =C2=A0 =C2=A0 =C2=A0 --v_payload :=3D (SELECT v_payload || (tj->&= #39;delta')); --This avoids
the issue.

I=E2=80=99m not following.=C2=A0 The probl= ematic line above is indeed annoying but it=E2=80=99s not a bug.=C2=A0 Oper= ator precedence is behaving as documented.=C2=A0 The second line (wrapping = tj->=E2=80=99delta=E2=80=99 with parentheses) is simply the necessary wa= y to write many expressions involving the =E2=80=9C->=E2=80=9D-like json= [b] operators.

David J.

--0000000000009f5efd064f580bc3--