pgsql: postgres_fdw: Fix assertion in estimate_path_cost_size().
postgres_fdw: Fix assertion in estimate_path_cost_size().
Commit 08d2d58a2 added an assertion assuming that the retrieved_rows
estimate for a foreign relation, which is re-used to cost pre-sorted
foreign paths with local stats, is set to at least one row in
estimate_path_cost_size(), which isn't correct because if the relation
is a foreign table with tuples=0, the estimate would be set to 0 there
when not using remote estimates.
Per bug #16807 from Alexander Lakhin. Back-patch to v13 where the
aforementioned commit went in.
Author: Etsuro Fujita
Reviewed-by: Kyotaro Horiguchi
Discussion: /messages/by-id/16807-9fe4e08fbaa5c7ce@postgresql.org
Branch
------
REL_13_STABLE
Details
-------
https://git.postgresql.org/pg/commitdiff/984384129bb8a92481d4f7ddd5dede2d781b191f
Modified Files
--------------
contrib/postgres_fdw/expected/postgres_fdw.out | 18 ++++++++++++++++++
contrib/postgres_fdw/postgres_fdw.c | 2 +-
contrib/postgres_fdw/sql/postgres_fdw.sql | 12 ++++++++++++
3 files changed, 31 insertions(+), 1 deletion(-)
Hi,
I think this bugfix needs to be backpatched to v12 too.
See backtrace / repro SQL here -
/messages/by-id/17713-92cce66de7e81c04@postgresql.org
-
Robins Tharakan
Amazon Web Services
Show quoted text
On Fri, 5 Feb 2021 at 17:05, Etsuro Fujita <efujita@postgresql.org> wrote:
postgres_fdw: Fix assertion in estimate_path_cost_size().
Commit 08d2d58a2 added an assertion assuming that the retrieved_rows
estimate for a foreign relation, which is re-used to cost pre-sorted
foreign paths with local stats, is set to at least one row in
estimate_path_cost_size(), which isn't correct because if the relation
is a foreign table with tuples=0, the estimate would be set to 0 there
when not using remote estimates.Per bug #16807 from Alexander Lakhin. Back-patch to v13 where the
aforementioned commit went in.Author: Etsuro Fujita
Reviewed-by: Kyotaro Horiguchi
Discussion: /messages/by-id/16807-9fe4e08fbaa5c7ce@postgresql.orgBranch
------
REL_13_STABLEDetails
-------
https://git.postgresql.org/pg/commitdiff/984384129bb8a92481d4f7ddd5dede2d781b191fModified Files
--------------
contrib/postgres_fdw/expected/postgres_fdw.out | 18 ++++++++++++++++++
contrib/postgres_fdw/postgres_fdw.c | 2 +-
contrib/postgres_fdw/sql/postgres_fdw.sql | 12 ++++++++++++
3 files changed, 31 insertions(+), 1 deletion(-)
Hi Robins,
On Mon, Dec 12, 2022 at 9:29 PM Robins Tharakan <tharakan@gmail.com> wrote:
I think this bugfix needs to be backpatched to v12 too.
See backtrace / repro SQL here -
/messages/by-id/17713-92cce66de7e81c04@postgresql.org
I misunderstood that the mentioned commit was added in v13. :-( Will
back-patch to v12 as well. Thanks for the report!
Best regards,
Etsuro Fujita