Re: BUG #17777: An assert failed in nodeWindowAgg.c - Mailing list pgsql-bugs

From Tom Lane
Subject Re: BUG #17777: An assert failed in nodeWindowAgg.c
Date
Msg-id 988099.1676249737@sss.pgh.pa.us
Whole thread Raw
In response to Re: BUG #17777: An assert failed in nodeWindowAgg.c  (David Rowley <dgrowleyml@gmail.com>)
Responses Re: BUG #17777: An assert failed in nodeWindowAgg.c  (David Rowley <dgrowleyml@gmail.com>)
List pgsql-bugs
David Rowley <dgrowleyml@gmail.com> writes:
> On Mon, 13 Feb 2023 at 05:19, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>> Why is it okay to check only the filter, and not the rest of the
>> WindowFunc's subexpressions?  The arguments we've just run through
>> seem to apply to a subplan in the direct or aggregated arguments
>> as well.

> Good point.  I had just been thinking in terms of the reported bug to
> make sure we inverse transition the same rows we transition. We also
> need to make sure the transition value matches in both transition
> directions.
> I've adjusted the patch accordingly.

Code looks good now, but the comment still claims this is only
important in the FILTER clause.  I'd rewrite the whole thing
perhaps:

    * We also don't risk using moving aggregates when there are subplans
    * in the arguments or FILTER clause.  This is partly because
    * contain_volatile_functions() doesn't look inside subplans; but
    * there are other reasons why a subplan's output might be volatile.
    * For example, syncscan mode can render the results nonrepeatable.

            regards, tom lane



pgsql-bugs by date:

Previous
From: Andres Freund
Date:
Subject: Re: BUG #17777: An assert failed in nodeWindowAgg.c
Next
From: Michael Paquier
Date:
Subject: Re: BUG #17760: SCRAM authentication fails with "modern" (rsassaPss signature) server certificate