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 1wMskJ-000PqL-13 for pgsql-hackers@arkaria.postgresql.org; Tue, 12 May 2026 19:26:23 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wMskE-005YQY-08 for pgsql-hackers@arkaria.postgresql.org; Tue, 12 May 2026 19:26:18 +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 1wMskD-005YQQ-28 for pgsql-hackers@lists.postgresql.org; Tue, 12 May 2026 19:26:17 +0000 Received: from mail-oa1-x2d.google.com ([2001:4860:4864:20::2d]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wMskB-00000000HDa-19PP for pgsql-hackers@lists.postgresql.org; Tue, 12 May 2026 19:26:17 +0000 Received: by mail-oa1-x2d.google.com with SMTP id 586e51a60fabf-439acb393f7so745228fac.1 for ; Tue, 12 May 2026 12:26:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1778613973; cv=none; d=google.com; s=arc-20240605; b=LcCzLr7ZnTyi641nhKGo5qvNKR8LGg703Pp/ekDh92ZK2IwFOlGGDhsY8YuRG/lwcY jsAJvvKhvI4TaFl1IR5PljMVZImfBCcYZfDVOV+ZsR1mOAQKgkJUq40qfml9YmUM7Kvw yOb6O61XZ/WJCFl+HpRngAdjlCLNLGfltxm+PTSf6nF7i9Ve2v8tX2WfeKPqGYRn/qpX VDJ0aMWY6YWB03tgaEVAIC38ScB7ICiLrhAQMtmA3MRDZwJJmwztyP/FZf7o8CcDfndE 0EjqoXevvBbXxAC6Q1/jFfe4VxiPp+fqitrVkdQypGmwv2ODOKRdckGHQU90HCbI8xE3 3kTA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=L8Z2Q6RocLhzs7KSvXTd8oeHO+1oGumZJ5TiqN8u3bQ=; fh=nUcR4BGqPW/1sMKHEIsiAuEuVlFJ0xh1lEVWLR/LUCA=; b=h0uihMfTIpOez3s/bfivl1X0xe2aPzmW9m1HeLJfSOw4sBptvHrCvIOYj9x2CQ3OYL XA7lG3Jr9UDK8XiyVTCLdo70R7NtRhq6PSgB81xOSEU56/wHDZRt6/H0VcoAJ0KU04HN 80+2EPCm1n7nXBr5TmSqykRLCOcS7AwPGxGBfxj5Y2U381GmHrJ6sgHjRiJUfIAVifE9 fq3rptUEcFd7B2XOML9d+ySyZ37JX4In0028oI7XnbtwzBI1pDpnjzuiMAPEcMOb7NZi jfTwhma3maIYNBvb6EZnfL9GzNxoihmZPKr0/Vg31g6fDOZ4UNw8FoMzc2SC1GBX41UG iVcQ==; 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=illuminatedcomputing-com.20251104.gappssmtp.com; s=20251104; t=1778613973; x=1779218773; darn=lists.postgresql.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=L8Z2Q6RocLhzs7KSvXTd8oeHO+1oGumZJ5TiqN8u3bQ=; b=DQM31o5ves2vS7E9PZFgoQxh6hxISTmDBbEnOlYBdy+5sdjRF5yztTda+J2fSggWbS Bidn63TXc0iHQGsspH52cj2XiYspdGVi4WbkDGH2cwrXkVC51AD2jetvxWCseq/wN3Ci ZUWgh7KthfxLI4BK06sTHOEV6wzmLJB2fJcv8jAmRvlKgu2CTxGbb5FgYgiYzVmMepJH /n0eZgrD27TFDqN+XpvmkT9g2km4At1zemjVDfljGJcq0+ftTrjTGUl3RWB+LRjDxHSa dIetdfiM3ap0jhvb3jayGDnTyxAYBVPNZQYptas4fH4Ojua08IEXM54JlrrGuo7ff0BD T/2Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1778613973; x=1779218773; h=content-transfer-encoding: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=L8Z2Q6RocLhzs7KSvXTd8oeHO+1oGumZJ5TiqN8u3bQ=; b=rmzC281FvhIN8XxoV7OGf6d1Vp8pFC2S5v1LCwjEhvMXHdL/Jf1IKESFyJ0AtqImuD s/zheCaa7GDMvF/MZnzEHQYnHRIXv1GOT3S4VomBP4JssCHzXuzlP5d7+vVbaa4zMvkr edCfkYO2Qbnwf2osqnsWrH3luFLiiZOz9t2vdkdiM8g+UWiQlTmm4Xs/6Df5dqgg6/SA +d/GNCzyawGuSmZcbr8kGcCNZeBAFDG6eafJcwFe8On/iTLQifhEPYy5/mjAVJXnKe4P aTMDjbTRHJTHQ10q7tM6lXs1X7erdY8FRuzcGQ0MwfCreH18C+I0VBeN4UApwrRkFFNv m4UA== X-Forwarded-Encrypted: i=1; AFNElJ8fCN6gsS4OJNp3CdylNl4aK4Ng8sNU0XwZg+Ispf9qSdJSiBDIKL+oANVWDH1Na61x+2mI/ynx9w94yGx4@lists.postgresql.org X-Gm-Message-State: AOJu0YyD9HHn2qkhU582rcI7YH3p2yhv99a86wdHQvdVefYnH13n6Khw UXJZX+2nEEYdtIhTuy7PCqfGpoi/4s3GOmEecD0swSXoqAlZNWwMlfyXjZUiMy8i/lQ+//eNjJR 7kLeT7jTYvbWG4BSr1hvRC4h4haFTLKfsjNww3QCIIQ== X-Gm-Gg: Acq92OEEdha+N1FY0YepuEhQOj23jAgzhvbP9KEZ+0l8HHnPzSpJHIJHzOiD/ujfoW3 LmkHiIbIpu3J9pMrCf6NcIYLEut2oqLcvTLokksCqqk4uCg3TNDaD9nXU/yOFcaLAPv756CVavp kF3Gji7bp/6bowwIT4ys8mEl86bR/UOK2NSnt2zl4DlFwajDIC28nD5pr2H7x77oY61qSupI1Kb oEV/SVmFzK3xpqSyr1EHH3Lnb14R0SVIAvYjKwkzuuQdJtV3nDkGWZBRnVWStTXq2VQg7y834MU u7OR X-Received: by 2002:a05:6820:4c08:b0:696:7b19:9cf3 with SMTP id 006d021491bc7-69b78cd0580mr112346eaf.8.1778613973656; Tue, 12 May 2026 12:26:13 -0700 (PDT) MIME-Version: 1.0 References: <27BD5D23-19C9-4FD1-8935-9C788C3C9869@gmail.com> <66C1555B-CA54-4ED1-AB4F-0EE97D24A006@gmail.com> <91B35E0F-5DC1-4417-A1B9-FAF4A3DCD2BD@gmail.com> <74C1863C-2C2A-423A-BDE7-0228889F1D80@gmail.com> In-Reply-To: From: Paul A Jungwirth Date: Tue, 12 May 2026 12:26:01 -0700 X-Gm-Features: AVHnY4LVSe6hbuFzM5AUyrM1qTBVRaJ77ZcHyLKzIi2GHIriF3dS5UW0Uix6RIM Message-ID: Subject: Re: FOR PORTION OF does not recompute GENERATED STORED columns that depend on the range column To: jian he Cc: Chao Li , Peter Eisentraut , SATYANARAYANA NARLAPURAM , PostgreSQL Hackers Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Mon, May 11, 2026 at 5:03=E2=80=AFAM jian he wrote: > > > > 2. I doubt if we need to switch to estate->es_query_cxt. Because Exec= GetUpdatedCols() is called by ExecGetAllUpdatedCols(), and its header comme= nt says the function runs in per-tuple memory context: > > > ``` > > Switching to estate->es_query_cxt can actually save some cycles. > > See ExecGetExtraUpdatedCols->ExecInitGenerated > /* > * Make sure these data structures are built in the per-query memory > * context so they'll survive throughout the query. > */ > oldContext =3D MemoryContextSwitchTo(estate->es_query_cxt); I agree that seems nice, but it doesn't seem correct if we sometimes change the context and sometimes not (from execute_attr_map_cols). Yours, --=20 Paul ~{:-) pj@illuminatedcomputing.com