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 1wMSEy-0006Tp-2i for pgsql-hackers@arkaria.postgresql.org; Mon, 11 May 2026 15:08:17 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wMSEx-001NmS-21 for pgsql-hackers@arkaria.postgresql.org; Mon, 11 May 2026 15:08:15 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wMSEx-001NmI-0c for pgsql-hackers@lists.postgresql.org; Mon, 11 May 2026 15:08:15 +0000 Received: from mail-lf1-x12a.google.com ([2a00:1450:4864:20::12a]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wMSEu-0000000042r-0ldU for pgsql-hackers@postgresql.org; Mon, 11 May 2026 15:08:14 +0000 Received: by mail-lf1-x12a.google.com with SMTP id 2adb3069b0e04-5a746f9c092so6980920e87.1 for ; Mon, 11 May 2026 08:08:11 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1778512091; cv=none; d=google.com; s=arc-20240605; b=WJALpDdFyi5EJB0R7e1z0L6W+huP4K/cetU0f7uDaaAEijElIHdKv3kWfcSlp6xCIF lybmaHuwiLdh9hHFx08E8L7seolsklJPDaLm/KJYFpRm21qFDnC9HntxX2GWHfc9orjY UyrJm/frAQpcFWIfrgRn0rFMgNf0SFj0ih9/r9Aj6n0SdAfLZARiKuMDsWLCBNH63S+6 Dy3uCguuS/RQoWKu5NCSSy120Q1bEUghudTTd4eXLNfOkjU1O+kSk9KXvr++RV8S0KW0 sRtotLconpzaQ6fPBz2KgxUQ+xIGN9HlAd+3jTqcL6vxUzqb6tqUUPg0AYBG4Q6QC8vG FvWg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=oVu9g31ahOOqETDG0MFifNMNSLZ+Jv+E2D9rOPt2dH8=; fh=Aji4o3xCj42HFelg5/fUf7Ylw3EdDXdDNlWoa3xka+Y=; b=JMsrFH7ahq8BxhCEnZ/0Od2TL6H2DyM/XHe5mzVbKhTLOAXFjBFqE+p8Yq3ocTGA5j 7Jlm2Pn4DiaN9wVHZwtDGdyUhrDQByHDyaRvHaQ2lDS37Vr3ZmOds9Zq/vnTBa1e6T3j PRXr+v1d+urH8/Lo4vunfesyYSou9qgAQRLN1qC+MxDOLBpUT0JMBreXp4Cg1ALesfnh Lp5NbtiXyZfA3R7KPVqh45a2Xe3wnyMLxESxn7Zo9cHjEHRH+ras7P4s1Gh5DlBGX0tx lYjM9TT2LKmUAgYN923bMqqGORs4NsS99ZHaWAVUFeGbVcJedEw9Cr4MhzwMd6ew+2AF RfKQ==; darn=postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=f10-com-br.20251104.gappssmtp.com; s=20251104; t=1778512091; x=1779116891; darn=postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=oVu9g31ahOOqETDG0MFifNMNSLZ+Jv+E2D9rOPt2dH8=; b=ZXpLm3dQ6Qq7zwYPHWtbQTIVOR1aShd+UFkSZAOFXqVROXCWGuH8Vk2K6dbL1i6UIm /8zXIZbTgWggOUP55ZT0huuxZgomh7x0BEARajFEl57FF9amF9FFBVhJe+WoNrzeuiua dy8fLirmB52fXalDscjM3kwQPtl9ClhmekFc54rfBu68359K4SqcQe8RIqVSiTt8nHjr cCJBTH1w60c6qWkQJGhbF5gf4iBODajJQuDRhTghZWLtEn1No9bDIBwz4KjhKCFSi0xD 3xuIaiYwTy4VRy+r4DKHT7cSBUYcBQDMOTbfmOEaxZCKH7Y/FED1Bib07bybI3YyAikc HoQA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1778512091; x=1779116891; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=oVu9g31ahOOqETDG0MFifNMNSLZ+Jv+E2D9rOPt2dH8=; b=Qidph3Lggo2b6cbB1pwjXa3Tvr4lCb3O6+ZGGNVGiFx758kK194jwCstuk6B/RXLnn bkVjeMq4yeAekWbx+UnLbiyilVvi+V6KkRD35+B+o6+SyjsHxq0UCKWSStahNpgcufvw iSqRvQ+U5kLeiQlJvRlECUDivP8N/eX26q5GMGg7ZULLwkDfqqwdCeZumUt3xoBMUALc ohyRlI2oo4ib0YO6IithpkfSOQqORvWyYcc7XdiLyfEkrjHBqAWDYOfYL/25M3yEPkRR Eajt+2cYXiSu5YExaeNi/GPuSiJgP5xtZaB7PbGYEQkX6OhNFyA9Jhpaqb3KC2eWtlJK j7TA== X-Gm-Message-State: AOJu0YyZHWejCFfRi9fNsE80LKnycn9T64Iy+CmXdYyTm2UL/HiCDeZr ZD3582aSw+tRCrJXOoKhfHlxyhpe2BG59m5oiqusN38xrvbXoe2oRwCh6jUnq5ijVvniU++TMBd PTXmCw8W4CvPa3VVt3hXwOJv5rwTr5+m54k7LAN5omvWYEIgqZ3sntQ== X-Gm-Gg: Acq92OHaOqGiU+eomqJXdygE483Cycm5lngY6sIIDlWPTpCsMcHKWBtl5E71MvlF4G7 peOZXRbSdfkAhw9izHRQpu4ts4VCZCWXOPrRhqJv2jozmBJznMEGr2tOTyPBJVYfLMKBINde9AP CpQXh7HYMCjQ+EV5XPbgoLsyeMbXLXVhtd9jM5PNnK+Iy5ufTi3XIVS3EglSbUaHS8pbPbZmK5Z vMwcDiP5Elh5Hx2xVFS95FFc4jR2DNOn9nsmJE+0K1Ycz06d8GgCffpdGHxMTyuXLQvk0YhlnZV 1hmVQEOlXOLkOv9Q X-Received: by 2002:a05:6512:ad1:b0:5a8:8966:e11e with SMTP id 2adb3069b0e04-5a899bcae3amr5670340e87.24.1778512090682; Mon, 11 May 2026 08:08:10 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Marcos Pegoraro Date: Mon, 11 May 2026 12:07:33 -0300 X-Gm-Features: AVHnY4L1NYELm9LXYYWA49m0dT5YtnMfjG6yG45jVtUrtytyAfmOWGARQYQH7t0 Message-ID: Subject: Re: Missing jsonb_ ... functions on DOCs To: Michael Paquier Cc: pgsql-hackers Content-Type: multipart/mixed; boundary="00000000000064ffff06518c1d6b" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --00000000000064ffff06518c1d6b Content-Type: multipart/alternative; boundary="00000000000064fffe06518c1d69" --00000000000064fffe06518c1d69 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Em dom., 10 de mai. de 2026 =C3=A0s 23:08, Michael Paquier escreveu: > Well, it seems to me that the intention is that it is pointless to > document the functions because that the users need only to be aware of > the operators, and the operators are enough to manipulate the jsonb > blobs. Documenting the functions would be just duplicating what we > already have for the operators, as listed here: > https://www.postgresql.org/docs/devel/functions-json.html A function is self explanatory, an operator is not. If we do something like what was done in [1], we don't change much on the page but at the same time we give the user both options. regards Marcos [1] - https://www.postgresql.org/docs/18/functions-string.html#FUNCTIONS-STRING-O= THER --00000000000064fffe06518c1d69 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Em dom., 10 de mai. de 2026 =C3=A0s = 23:08, Michael Paquier <michael@p= aquier.xyz> escreveu:
Well, it se= ems to me that the intention is that it is pointless to
document the functions because that the users need only to be aware of
the operators, and the operators are enough to manipulate the jsonb
blobs.=C2=A0 Documenting the functions would be just duplicating what we already have for the operators, as listed here:
https://www.postgresql.org/docs/devel/fun= ctions-json.html

A functio= n is self explanatory, an operator is not.

If we do something like what was done in [1], we don'= ;t change much on the page but at the same time we give the user both optio= ns.

regards
Marcos

--00000000000064fffe06518c1d69-- --00000000000064ffff06518c1d6b Content-Type: application/octet-stream; name="DOC jsonb functions with their related operators.diff" Content-Disposition: attachment; filename="DOC jsonb functions with their related operators.diff" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mp1c3szl0 RnJvbSAzYjZmZDlmZmJkZDNkMzAxYzVlMzZlZTc5YWM3MTJjZTQ5MTY3NGU3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBQZWdvcmFyb0YxMCA8bWFyY29zQGYxMC5jb20uYnI+CkRhdGU6 IE1vbiwgMTEgTWF5IDIwMjYgMTE6NTg6MjggLTAzMDAKU3ViamVjdDogW1BBVENIXSBBZGRlZCB0 byBET0MganNvbmIgZnVuY3Rpb25zIHRvIHRoZWlyIGVxdWl2YWxlbnQgb3BlcmF0b3JzCgotLS0K IGRvYy9zcmMvc2dtbC9mdW5jL2Z1bmMtanNvbi5zZ21sIHwgMjQgKysrKysrKysrKysrKysrKysr KysrKysrCiAxIGZpbGUgY2hhbmdlZCwgMjQgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2Rv Yy9zcmMvc2dtbC9mdW5jL2Z1bmMtanNvbi5zZ21sIGIvZG9jL3NyYy9zZ21sL2Z1bmMvZnVuYy1q c29uLnNnbWwKaW5kZXggM2Q5N2UyYjUzNzUuLmZmZTgxYjcwYTJjIDEwMDY0NAotLS0gYS9kb2Mv c3JjL3NnbWwvZnVuYy9mdW5jLWpzb24uc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvZnVuYy9mdW5j LWpzb24uc2dtbApAQCAtMjc1LDYgKzI3NSw5IEBACiAgICAgICAgIERvZXMgdGhlIGZpcnN0IEpT T04gdmFsdWUgY29udGFpbiB0aGUgc2Vjb25kPwogICAgICAgICAoU2VlIDx4cmVmIGxpbmtlbmQ9 Impzb24tY29udGFpbm1lbnQiLz4gZm9yIGRldGFpbHMgYWJvdXQgY29udGFpbm1lbnQuKQogICAg ICAgIDwvcGFyYT4KKyAgICAgICA8cGFyYT4KKyAgICAgICAgRXF1aXZhbGVudCB0byB0aGUgPGZ1 bmN0aW9uPmpzb25iX2NvbnRhaW5zKCk8L2Z1bmN0aW9uPiBmdW5jdGlvbi4KKyAgICAgICA8L3Bh cmE+CiAgICAgICAgPHBhcmE+CiAgICAgICAgIDxsaXRlcmFsPid7ImEiOjEsICJiIjoyfSc6Ompz b25iICYjNjQ7Jmd0OyAneyJiIjoyfSc6Ompzb25iPC9saXRlcmFsPgogICAgICAgICA8cmV0dXJu dmFsdWU+dDwvcmV0dXJudmFsdWU+CkBAIC0yODksNiArMjkyLDkgQEAKICAgICAgICA8cGFyYT4K ICAgICAgICAgSXMgdGhlIGZpcnN0IEpTT04gdmFsdWUgY29udGFpbmVkIGluIHRoZSBzZWNvbmQ/ CiAgICAgICAgPC9wYXJhPgorICAgICAgIDxwYXJhPgorICAgICAgICBFcXVpdmFsZW50IHRvIHRo ZSA8ZnVuY3Rpb24+anNvbmJfY29udGFpbmVkKCk8L2Z1bmN0aW9uPiBmdW5jdGlvbi4KKyAgICAg ICA8L3BhcmE+CiAgICAgICAgPHBhcmE+CiAgICAgICAgIDxsaXRlcmFsPid7ImIiOjJ9Jzo6anNv bmIgJmx0O0AgJ3siYSI6MSwgImIiOjJ9Jzo6anNvbmI8L2xpdGVyYWw+CiAgICAgICAgIDxyZXR1 cm52YWx1ZT50PC9yZXR1cm52YWx1ZT4KQEAgLTMwNCw2ICszMTAsOSBAQAogICAgICAgICBEb2Vz IHRoZSB0ZXh0IHN0cmluZyBleGlzdCBhcyBhIHRvcC1sZXZlbCBrZXkgb3IgYXJyYXkgZWxlbWVu dCB3aXRoaW4KICAgICAgICAgdGhlIEpTT04gdmFsdWU/CiAgICAgICAgPC9wYXJhPgorICAgICAg IDxwYXJhPgorICAgICAgICBFcXVpdmFsZW50IHRvIHRoZSA8ZnVuY3Rpb24+anNvbmJfZXhpc3Rz KCk8L2Z1bmN0aW9uPiBmdW5jdGlvbi4KKyAgICAgICA8L3BhcmE+CiAgICAgICAgPHBhcmE+CiAg ICAgICAgIDxsaXRlcmFsPid7ImEiOjEsICJiIjoyfSc6Ompzb25iID8gJ2InPC9saXRlcmFsPgog ICAgICAgICA8cmV0dXJudmFsdWU+dDwvcmV0dXJudmFsdWU+CkBAIC0zMjMsNiArMzMyLDkgQEAK ICAgICAgICAgRG8gYW55IG9mIHRoZSBzdHJpbmdzIGluIHRoZSB0ZXh0IGFycmF5IGV4aXN0IGFz IHRvcC1sZXZlbCBrZXlzIG9yCiAgICAgICAgIGFycmF5IGVsZW1lbnRzPwogICAgICAgIDwvcGFy YT4KKyAgICAgICA8cGFyYT4KKyAgICAgICAgRXF1aXZhbGVudCB0byB0aGUgPGZ1bmN0aW9uPmpz b25iX2V4aXN0c19hbnkoKTwvZnVuY3Rpb24+IGZ1bmN0aW9uLgorICAgICAgIDwvcGFyYT4KICAg ICAgICA8cGFyYT4KICAgICAgICAgPGxpdGVyYWw+J3siYSI6MSwgImIiOjIsICJjIjozfSc6Ompz b25iID98IGFycmF5WydiJywgJ2QnXTwvbGl0ZXJhbD4KICAgICAgICAgPHJldHVybnZhbHVlPnQ8 L3JldHVybnZhbHVlPgpAQCAtMzM4LDYgKzM1MCw5IEBACiAgICAgICAgIERvIGFsbCBvZiB0aGUg c3RyaW5ncyBpbiB0aGUgdGV4dCBhcnJheSBleGlzdCBhcyB0b3AtbGV2ZWwga2V5cyBvcgogICAg ICAgICBhcnJheSBlbGVtZW50cz8KICAgICAgICA8L3BhcmE+CisgICAgICAgPHBhcmE+CisgICAg ICAgIEVxdWl2YWxlbnQgdG8gdGhlIDxmdW5jdGlvbj5qc29uYl9leGlzdHNfYWxsKCk8L2Z1bmN0 aW9uPiBmdW5jdGlvbi4KKyAgICAgICA8L3BhcmE+CiAgICAgICAgPHBhcmE+CiAgICAgICAgIDxs aXRlcmFsPidbImEiLCAiYiIsICJjIl0nOjpqc29uYiA/JmFtcDsgYXJyYXlbJ2EnLCAnYiddPC9s aXRlcmFsPgogICAgICAgICA8cmV0dXJudmFsdWU+dDwvcmV0dXJudmFsdWU+CkBAIC0zNjAsNiAr Mzc1LDkgQEAKICAgICAgICAgRG9lcyBub3Qgb3BlcmF0ZSByZWN1cnNpdmVseTogb25seSB0aGUg dG9wLWxldmVsIGFycmF5IG9yIG9iamVjdAogICAgICAgICBzdHJ1Y3R1cmUgaXMgbWVyZ2VkLgog ICAgICAgIDwvcGFyYT4KKyAgICAgICA8cGFyYT4KKyAgICAgICAgRXF1aXZhbGVudCB0byB0aGUg PGZ1bmN0aW9uPmpzb25iX2NvbmNhdCgpPC9mdW5jdGlvbj4gZnVuY3Rpb24uCisgICAgICAgPC9w YXJhPgogICAgICAgIDxwYXJhPgogICAgICAgICA8bGl0ZXJhbD4nWyJhIiwgImIiXSc6Ompzb25i IHx8ICdbImEiLCAiZCJdJzo6anNvbmI8L2xpdGVyYWw+CiAgICAgICAgIDxyZXR1cm52YWx1ZT5b ImEiLCAiYiIsICJhIiwgImQiXTwvcmV0dXJudmFsdWU+CkBAIC0zOTUsNiArNDEzLDkgQEAKICAg ICAgICAgRGVsZXRlcyBhIGtleSAoYW5kIGl0cyB2YWx1ZSkgZnJvbSBhIEpTT04gb2JqZWN0LCBv ciBtYXRjaGluZyBzdHJpbmcKICAgICAgICAgdmFsdWUocykgZnJvbSBhIEpTT04gYXJyYXkuCiAg ICAgICAgPC9wYXJhPgorICAgICAgIDxwYXJhPgorICAgICAgICBFcXVpdmFsZW50IHRvIHRoZSA8 ZnVuY3Rpb24+anNvbmJfZGVsZXRlKCk8L2Z1bmN0aW9uPiBmdW5jdGlvbi4KKyAgICAgICA8L3Bh cmE+CiAgICAgICAgPHBhcmE+CiAgICAgICAgIDxsaXRlcmFsPid7ImEiOiAiYiIsICJjIjogImQi fSc6Ompzb25iIC0gJ2EnPC9saXRlcmFsPgogICAgICAgICA8cmV0dXJudmFsdWU+eyJjIjogImQi fTwvcmV0dXJudmFsdWU+CkBAIC00NDQsNiArNDY1LDkgQEAKICAgICAgICAgRGVsZXRlcyB0aGUg ZmllbGQgb3IgYXJyYXkgZWxlbWVudCBhdCB0aGUgc3BlY2lmaWVkIHBhdGgsIHdoZXJlIHBhdGgK ICAgICAgICAgZWxlbWVudHMgY2FuIGJlIGVpdGhlciBmaWVsZCBrZXlzIG9yIGFycmF5IGluZGV4 ZXMuCiAgICAgICAgPC9wYXJhPgorICAgICAgIDxwYXJhPgorICAgICAgICBFcXVpdmFsZW50IHRv IHRoZSA8ZnVuY3Rpb24+anNvbmJfZGVsZXRlX3BhdGgoKTwvZnVuY3Rpb24+IGZ1bmN0aW9uLgor ICAgICAgIDwvcGFyYT4KICAgICAgICA8cGFyYT4KICAgICAgICAgPGxpdGVyYWw+J1siYSIsIHsi YiI6MX1dJzo6anNvbmIgIy0gJ3sxLGJ9JzwvbGl0ZXJhbD4KICAgICAgICAgPHJldHVybnZhbHVl PlsiYSIsIHt9XTwvcmV0dXJudmFsdWU+Ci0tIAoyLjUxLjIud2luZG93cy4xCgo= --00000000000064ffff06518c1d6b--