Re: BUG #16807: Assert failed in postgres_fdw/estimate_path_cost_size with an empty foreign table - Mailing list pgsql-bugs

From Etsuro Fujita
Subject Re: BUG #16807: Assert failed in postgres_fdw/estimate_path_cost_size with an empty foreign table
Date
Msg-id CAPmGK141OhAhUQu9MyvFWDGuWJUMTbDZGO0N-hLEFJsF7ZQ17A@mail.gmail.com
Whole thread Raw
In response to Re: BUG #16807: Assert failed in postgres_fdw/estimate_path_cost_size with an empty foreign table  (Kyotaro Horiguchi <horikyota.ntt@gmail.com>)
Responses Re: BUG #16807: Assert failed in postgres_fdw/estimate_path_cost_size with an empty foreign table  (Etsuro Fujita <etsuro.fujita@gmail.com>)
List pgsql-bugs
On Thu, Jan 14, 2021 at 1:30 PM Kyotaro Horiguchi
<horikyota.ntt@gmail.com> wrote:
> At Thu, 14 Jan 2021 11:56:08 +0900, Etsuro Fujita <etsuro.fujita@gmail.com> wrote in
> > If foreignrel->tuples is set to zero, the retrieved_rows estimate will
> > also be set to zero, so the assertion pointed out upthread is not
> > correct.  I think I mistakenly assumed that foreignrel->tuples would
> > have been forced to be at least one row, like foreignrel->rows, before
> > we get to estimate_path_cost_size(), which is not correct.
> >
> > To fix, I think it would be better to adjust the assertion accordingly
> > than removing it, since it was added to make sure that the
> > retrieved_rows estimate is set to a sensible value.  Attached is a
> > patch for that.  I added a simpler test case as well.
>
> FWIW I drew the same conclusion.

Ok, thanks for reviewing!

I tweaked a regression test comment a little bit and added the commit
message.  Attached is an updated patch.  I’ll commit the patch.

Best regards,
Etsuro Fujita

Attachment

pgsql-bugs by date:

Previous
From: Neil Chen
Date:
Subject: Re: BUG #16846: "retrieved too many tuples in a bounded sort"
Next
From: Mahendra Singh Thalor
Date:
Subject: Re: BUG #16846: "retrieved too many tuples in a bounded sort"