Thread
-
Re: FOR PORTION OF does not recompute GENERATED STORED columns that depend on the range column
Paul A Jungwirth <pj@illuminatedcomputing.com> — 2026-05-12T19:26:01Z
On Mon, May 11, 2026 at 5:03 AM jian he <jian.universality@gmail.com> wrote: > > > > 2. I doubt if we need to switch to estate->es_query_cxt. Because ExecGetUpdatedCols() is called by ExecGetAllUpdatedCols(), and its header comment 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 = 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, -- Paul ~{:-) pj@illuminatedcomputing.com