Re: sublink [exists (select xxx group by grouping sets ())] causes an assertion error

From: Jeff Davis <pgsql(at)j-davis(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, 赵庭海(庭章) <zhaotinghai(dot)zth(at)alibaba-inc(dot)com>
Cc: pgsql-hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, Heikki Linnakangas <hlinnaka(at)iki(dot)fi>
Subject: Re: sublink [exists (select xxx group by grouping sets ())] causes an assertion error
Date: 2024-03-23 01:22:21
Message-ID: 7242a03fe0b52e8dd24b21fc8973738105e64990.camel@j-davis.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Fri, 2024-03-22 at 12:28 -0400, Tom Lane wrote:
> Thanks for the report.  I did some bisecting and found that the crash
> appears at Jeff's commit c8aeaf3ab (which introduced this assertion)
> and disappears at Heikki's c4649cce3 (which removed it).  So I would
> say that the problem is "this assertion is wrong", and we should fix
> the problem by fixing the assertion, not by hacking around in distant
> calling code.  On the whole, since this code has been dead for
> several versions, I'd be inclined to just remove the assertion.

c4649cce3 didn't add additional calls to LogicalTapeSetBlocks(), so I'm
not sure if the removal of the Assert was related to his changes, or if
he just realized the assertion was wrong and removed it along the way?

Also, without the assertion, the word "should" in the comment is
ambiguous (does it mean "must not" or something else), and it still
exists in master. Do we care about the calculation being wrong if
there's an unfinished write? If not, I'll just clarify that the
calculation doesn't take into account still-buffered data. If we do
care, then something might need to be fixed.

Regards,
Jeff Davis

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Corey Huinker 2024-03-23 01:51:01 Re: Statistics Import and Export
Previous Message Thomas Munro 2024-03-23 00:45:28 Re: Cannot find a working 64-bit integer type on Illumos