Re: Assertion failure with LEFT JOINs among >500 relations - Mailing list pgsql-hackers

From David Rowley
Subject Re: Assertion failure with LEFT JOINs among >500 relations
Date
Msg-id CAApHDvpWWNVSumg_ZNwZ6diuMZ4MsnutWx+_snHJZpDU+-vKhw@mail.gmail.com
Whole thread Raw
In response to Re: Assertion failure with LEFT JOINs among >500 relations  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Assertion failure with LEFT JOINs among >500 relations  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
On Fri, 9 Oct 2020 at 12:59, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> If we did want to do something here, I'd consider something like
>
>         if (isnan(outer_skip_rows))
>             outer_skip_rows = 0;
>         if (isnan(inner_skip_rows))
>             inner_skip_rows = 0;

Are you worried about the costs above the join that triggers that
coming out as NaN with that fix? It appears that's the case. Cost
comparisons of paths with that are not going to do anything along the
lines of sane.

I guess whether or not that matters depends on if we expect any real
queries to hit this, or if we just want to stop the Assert failure.

... 500 joins. I'm willing to listen to the explanation use case, but
in absence of that explanation, I'd be leaning towards "you're doing
it wrong".  If that turns out to be true, then perhaps your proposed
fix is okay.

David



pgsql-hackers by date:

Previous
From: Peter Smith
Date:
Subject: Re: [HACKERS] logical decoding of two-phase transactions
Next
From: "tsunakawa.takay@fujitsu.com"
Date:
Subject: RE: [Patch] Optimize dropping of relation buffers using dlist