| From: | Tatsuo Ishii <ishii(at)postgresql(dot)org> |
|---|---|
| To: | assam258(at)gmail(dot)com |
| Cc: | jacob(dot)champion(at)enterprisedb(dot)com, david(dot)g(dot)johnston(at)gmail(dot)com, vik(at)postgresfriends(dot)org, er(at)xs4all(dot)nl, peter(at)eisentraut(dot)org, pgsql-hackers(at)postgresql(dot)org |
| Subject: | Re: Row pattern recognition |
| Date: | 2026-02-04 10:22:22 |
| Message-ID: | 20260204.192222.892684621512920290.ishii@postgresql.org |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Hi Henson,
> Therefore, I believe it only makes sense to add explicit initialization
> for nfaStatesActive and nfaContextsActive, since these are the only two
> that release_partition() also explicitly resets.
That makes sense.
> Adding explicit
> initialization for all the cumulative statistics would be misleading,
> as it might suggest they get reset somewhere (which they don't).
>
> ## Proposal for consistency
>
> For consistency with release_partition(), I can add just the two
> per-partition counter initializations to ExecInitWindowAgg():
>
> /* Initialize NFA free lists for row pattern matching */
> winstate->nfaContext = NULL;
> winstate->nfaContextTail = NULL;
> winstate->nfaContextFree = NULL;
> winstate->nfaStateFree = NULL;
> winstate->nfaLastProcessedRow = -1;
> winstate->nfaStatesActive = 0; // Add this
> winstate->nfaContextsActive = 0; // Add this
>
> This would make both ExecInitWindowAgg() and release_partition()
> initialize the same set of per-partition NFA fields, making the code
> more uniform and easier to review. The cumulative statistics fields
> remain omitted in both functions, which correctly reflects that they
> are never reset.
>
> Functionally, this change makes no difference since palloc0() already
> zeros these fields, but it improves code consistency and makes the
> per-partition vs. query-wide distinction clearer.
>
> Would you like me to include this change in the next patch?
Yes, please.
Best regards,
--
Tatsuo Ishii
SRA OSS K.K.
English: http://www.sraoss.co.jp/index_en/
Japanese:http://www.sraoss.co.jp
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Corey Huinker | 2026-02-04 10:32:46 | Re: Add expressions to pg_restore_extended_stats() |
| Previous Message | jian he | 2026-02-04 10:22:16 | Re: ON CONFLICT DO SELECT (take 3) |