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 1vRhDy-002lI8-0C for pgsql-hackers@arkaria.postgresql.org; Sat, 06 Dec 2025 01:36:38 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vRhDw-00Aeab-2P for pgsql-hackers@arkaria.postgresql.org; Sat, 06 Dec 2025 01:36:37 +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 1vRhDw-00AeaS-1Q for pgsql-hackers@lists.postgresql.org; Sat, 06 Dec 2025 01:36:36 +0000 Received: from mail-pj1-x102b.google.com ([2607:f8b0:4864:20::102b]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1vRhDt-003Mo7-33 for pgsql-hackers@lists.postgresql.org; Sat, 06 Dec 2025 01:36:35 +0000 Received: by mail-pj1-x102b.google.com with SMTP id 98e67ed59e1d1-349ae58a7baso5824a91.0 for ; Fri, 05 Dec 2025 17:36:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1764984992; x=1765589792; darn=lists.postgresql.org; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=CY1OGaFHVBENUvK6pg4pIY9j4CGGOGmK2dl7UIEMNwc=; b=eM0cunzuy02irI48evwv6xcN9aEwEoAmd30mck9jq8kDDH/cVrzxF8gLAqjSh42+Ck kyUFNBqwxUJ6vtw5TSQxU/507eBrnsqa0kbFnw7/SCGHPmXxD2PgxCj0ddkte9BE6vAs xBzzOcU9qwmvTOJbAeNedVsV1lWNl8JDEAB87z3KFkVW8x1EszBG+BoEeCu34zgBYJ48 vq4oBuvL/+rd+YnpyLsOC1DUckwnjCZAN8ZAGtNthOyRD9IJMWxHCzDbvaHtWzwy3/7w kwp1wwaqUf2lC2W1UB9fQ+lBYllOGQwf5BSotEVR9hCBibXUJmeILROdaKXxV1BcKv9B kvUw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764984992; x=1765589792; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-gg:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=CY1OGaFHVBENUvK6pg4pIY9j4CGGOGmK2dl7UIEMNwc=; b=XPrRbN0A9dWZ4KMqbtqzoR53yGGQZ2xqJq8w/CMGXngtEomssGgbw2OThdzCR3Y4rg XlU0tUtLVwXM9YbPQ6h7NUY+aIHPOlzN24nsLq6GXd5/ejBNxctOe+t4WA3nOTcIBJgD QImxWxDea8xUmhuW21IadW352mH31K53lmdOa63eM7bEGawjFYkAeIGblWJbzvNtSqe3 2Ca/SjyL1RshXZlurcSKunpO9CROPgFHje7Z1PDOsPa1qYn29UPMnWQdUktxeKq4tvuh Ugv5snGI1EaAzYpIT8LDDfy9fzgLzXVmIEQR+c2zzWRMsdvr6E5ODcGjW/+P/4eVPlX5 y9Bg== X-Forwarded-Encrypted: i=1; AJvYcCVGopYUUuHMrTwlqaaoF2ngdikXm53AHFE9owLPG34RFqNXpqFaiJ82hT/ye+QvUat+ivGb1U/XDIO5LweY@lists.postgresql.org X-Gm-Message-State: AOJu0YwdlXmCuCEPr087wvPE+K/I7L1W2zyzCcp9EzkJZk6zuxMwqreC 64LnvuQJXL9IUEdGCRDfCHRx0RggpsqxrecTbQathE7rn4qOMoqdD7NV X-Gm-Gg: ASbGnctWgs8P6fRMjhA1j2P0/ihkRa7bsLGIWH/9xaUn/tFrQfcn3lFJ4zGJBQmiaDl k+h+r7QKqD1FOrt6vVeA3GQLfP/YBPGt5ZHkVe8nkBjvh0ILSfqNoAdV4FvnYt7TTthiqnfdQMr 6vE2BSSK49Y/16evNwL+mnBBwjtlpZGfP6NQQx69FVCMutE79srWd4t5XOFxuCpVn4TSNMZTIKw hpgOHOLb8b1refFbehDi9NGyNu34pIR1nZ6SvZIvLQVjSpkJsgxtebYiFadpJPrsQY586cg3oOV 6Df+IQ83ep+Ltq1X/3BsOljWXbbtrAt+2ZSzP0l9b4aZ5h4I2M5dqv6htpI0+A8HiWVyb9Yh4Qq 4O1emKjk8GS+5acvnju4KH+4tLyJRCmJKQAZBf1EOkVGoqDcD1SSIbc3BsuaNrRTi19SKPu6pkO hEViN2ImVco7T7i3RptrA= X-Google-Smtp-Source: AGHT+IE96XJKHB3hHYuDk68NPZfjLjoxnkb/XkxqITYpXY3Be3/vqIDTObUNcAVaX2pBRg1yHQe86A== X-Received: by 2002:a17:90b:3890:b0:321:9366:5865 with SMTP id 98e67ed59e1d1-349a26c2b62mr786593a91.33.1764984992357; Fri, 05 Dec 2025 17:36:32 -0800 (PST) Received: from smtpclient.apple ([45.32.121.103]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-3494ea63b66sm5664306a91.10.2025.12.05.17.36.29 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 05 Dec 2025 17:36:30 -0800 (PST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3826.700.81\)) Subject: Re: Making jsonb_agg() faster From: Chao Li In-Reply-To: <1985954.1764976473@sss.pgh.pa.us> Date: Sat, 6 Dec 2025 09:35:51 +0800 Cc: jian he , pgsql-hackers@lists.postgresql.org Content-Transfer-Encoding: quoted-printable Message-Id: References: <1060917.1753202222@sss.pgh.pa.us> <617666.1755277022@sss.pgh.pa.us> <654628.1755297629@sss.pgh.pa.us> <2129790.1755889894@sss.pgh.pa.us> <68A1061C-81A5-46AA-AFA9-48294908254C@gmail.com> <2613D418-67E0-4DD8-BDA6-AB1BB04DB1A2@gmail.com> <2466173.1756498180@sss.pgh.pa.us> <163563.1762117009@sss.pgh.pa.us> <354608.1762195230@sss.pgh.pa.us> <2052300.1763664997@sss.pgh.pa.us> <1985954.1764976473@sss.pgh.pa.us> To: Tom Lane X-Mailer: Apple Mail (2.3826.700.81) List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk > On Dec 6, 2025, at 07:14, Tom Lane wrote: >=20 > v5, rebased over a couple of recent patches. No substantive changes. >=20 > I'd kind of like to get this pushed soon, because it keeps getting > sideswiped ... does anyone have further comments? Actually I traced v4 again this week. I tried to find out something to = comment, but ended up I didn=E2=80=99t find anything significant. My only nit commit is still about the hard-coded 12: ``` + case TIMETZOID: + /* pass-by-reference */ + oldcontext =3D = MemoryContextSwitchTo(outcontext); + v->val.datetime.value =3D = datumCopy(v->val.datetime.value, + = false, 12); ``` I commented this before and you explained. But I still think it may = deserve a comment for why 12 is here, otherwise future reader may also = get the same confusion as when I first time read this code. Best regards, -- Chao Li (Evan) HighGo Software Co., Ltd. https://www.highgo.com/