Re: BUG #17774: Assert triggered on brin_minmax_multi.c - Mailing list pgsql-bugs

From Dmitry Dolgov
Subject Re: BUG #17774: Assert triggered on brin_minmax_multi.c
Date
Msg-id 20230208153313.fym7at3ubgrec67a@ddolgov.remote.csb
Whole thread Raw
In response to Re: BUG #17774: Assert triggered on brin_minmax_multi.c  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: BUG #17774: Assert triggered on brin_minmax_multi.c  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-bugs
> On Wed, Feb 08, 2023 at 10:03:01AM -0500, Tom Lane wrote:
> Dmitry Dolgov <9erthalion6@gmail.com> writes:
> > The negative delta might be only a consequence. From what I see it's
> > called from build_distances, and the idea is to find the gaps between
> > the max value of the current interval and the min value of the next one,
> > so they should be ordered and delta should be always positive.
>
> I'd believe this argument more readily if the calculation weren't being
> done in float arithmetic.  Since it is, you're at the mercy of roundoff
> error ... and that small negative delta could certainly pass for
> roundoff error.
>
> Clamping the result to [0,1] would be a brighter plan than just asserting
> that it's in-range.

Hmm...yeah, good point. In both the reproducer I've posted and the
backtrace from the thread the delta is indeed rather small.



pgsql-bugs by date:

Previous
From: Tom Lane
Date:
Subject: Re: BUG #17774: Assert triggered on brin_minmax_multi.c
Next
From: Dmytro Hanzhelo
Date:
Subject: Re: BUG #17782: ERROR: variable not found in subplan target lists