diff options
author | Etsuro Fujita <efujita@postgresql.org> | 2021-02-05 15:30:02 +0900 |
---|---|---|
committer | Etsuro Fujita <efujita@postgresql.org> | 2021-02-05 15:30:02 +0900 |
commit | 984384129bb8a92481d4f7ddd5dede2d781b191f (patch) | |
tree | 5af1f50e45cb01e1b347c82b0d339c52f27430ed /contrib/postgres_fdw/postgres_fdw.c | |
parent | 6467661b6d80122582c9b84f9ae350e5e8073de2 (diff) | |
download | postgresql-984384129bb8a92481d4f7ddd5dede2d781b191f.tar.gz postgresql-984384129bb8a92481d4f7ddd5dede2d781b191f.zip |
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: https://postgr.es/m/16807-9fe4e08fbaa5c7ce%40postgresql.org
Diffstat (limited to 'contrib/postgres_fdw/postgres_fdw.c')
-rw-r--r-- | contrib/postgres_fdw/postgres_fdw.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/contrib/postgres_fdw/postgres_fdw.c b/contrib/postgres_fdw/postgres_fdw.c index ed4e455fcb1..6af224fa217 100644 --- a/contrib/postgres_fdw/postgres_fdw.c +++ b/contrib/postgres_fdw/postgres_fdw.c @@ -2810,7 +2810,7 @@ estimate_path_cost_size(PlannerInfo *root, */ if (fpinfo->rel_startup_cost >= 0 && fpinfo->rel_total_cost >= 0) { - Assert(fpinfo->retrieved_rows >= 1); + Assert(fpinfo->retrieved_rows >= 0); rows = fpinfo->rows; retrieved_rows = fpinfo->retrieved_rows; |