RESET enable_hashjoin;
  RESET enable_nestloop;
 +-- Test executing assertion in estimate_path_cost_size() that makes sure that
 +-- retrieved_rows for foreign rel re-used to cost pre-sorted foreign paths is
 +-- a sensible value even when the rel has tuples=0
 +CREATE TABLE loct_empty (c1 int NOT NULL, c2 text);
 +CREATE FOREIGN TABLE ft_empty (c1 int NOT NULL, c2 text)
 +  SERVER loopback OPTIONS (table_name 'loct_empty');
 +INSERT INTO loct_empty
 +  SELECT id, 'AAA' || to_char(id, 'FM000') FROM generate_series(1, 100) id;
 +DELETE FROM loct_empty;
 +ANALYZE ft_empty;
 +EXPLAIN (VERBOSE, COSTS OFF) SELECT * FROM ft_empty ORDER BY c1;
 +                                  QUERY PLAN                                   
 +-------------------------------------------------------------------------------
 + Foreign Scan on public.ft_empty
 +   Output: c1, c2
 +   Remote SQL: SELECT c1, c2 FROM public.loct_empty ORDER BY c1 ASC NULLS LAST
 +(3 rows)
 +
  -- ===================================================================
  -- WHERE with remotely-executable conditions
  -- ===================================================================
                  */
         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;
          RESET enable_hashjoin;
  RESET enable_nestloop;
  
 +-- Test executing assertion in estimate_path_cost_size() that makes sure that
 +-- retrieved_rows for foreign rel re-used to cost pre-sorted foreign paths is
 +-- a sensible value even when the rel has tuples=0
 +CREATE TABLE loct_empty (c1 int NOT NULL, c2 text);
 +CREATE FOREIGN TABLE ft_empty (c1 int NOT NULL, c2 text)
 +  SERVER loopback OPTIONS (table_name 'loct_empty');
 +INSERT INTO loct_empty
 +  SELECT id, 'AAA' || to_char(id, 'FM000') FROM generate_series(1, 100) id;
 +DELETE FROM loct_empty;
 +ANALYZE ft_empty;
 +EXPLAIN (VERBOSE, COSTS OFF) SELECT * FROM ft_empty ORDER BY c1;
 +
  -- ===================================================================
  -- WHERE with remotely-executable conditions
  -- ===================================================================