]> granicus.if.org Git - postgresql/commitdiff
Repair oversight in creation of "append relations": we should set up
authorTom Lane <tgl@sss.pgh.pa.us>
Sun, 28 Jan 2007 18:50:40 +0000 (18:50 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Sun, 28 Jan 2007 18:50:40 +0000 (18:50 +0000)
rel->tuples as well as rel->rows, since some estimation functions expect both
to be valid in every baserel.  Per report from Dave Dutcher.

src/backend/optimizer/path/allpaths.c

index cbe78c3abd5035b76273c976e34bc3f82e250676..43891a184594b0bde3f57bad62fd838d6744e6dc 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *       $PostgreSQL: pgsql/src/backend/optimizer/path/allpaths.c,v 1.157 2007/01/20 20:45:38 tgl Exp $
+ *       $PostgreSQL: pgsql/src/backend/optimizer/path/allpaths.c,v 1.158 2007/01/28 18:50:40 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -393,6 +393,12 @@ set_append_rel_pathlist(PlannerInfo *root, RelOptInfo *rel,
                }
        }
 
+       /*
+        * Set "raw tuples" count equal to "rows" for the appendrel; needed
+        * because some places assume rel->tuples is valid for any baserel.
+        */
+       rel->tuples = rel->rows;
+
        /*
         * Finally, build Append path and install it as the only access path for
         * the parent rel.      (Note: this is correct even if we have zero or one