From: Tom Lane Date: Sun, 28 Jan 2007 18:50:48 +0000 (+0000) Subject: Repair oversight in creation of "append relations": we should set up X-Git-Tag: REL8_2_2~15 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=01d9754bd9c535fd0a6b859acda01359db0eb6a2;p=thirdparty%2Fpostgresql.git Repair oversight in creation of "append relations": we should set up rel->tuples as well as rel->rows, since some estimation functions expect both to be valid in every baserel. Per report from Dave Dutcher. --- diff --git a/src/backend/optimizer/path/allpaths.c b/src/backend/optimizer/path/allpaths.c index 12da0781a0d..1e195398f3f 100644 --- a/src/backend/optimizer/path/allpaths.c +++ b/src/backend/optimizer/path/allpaths.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/optimizer/path/allpaths.c,v 1.154 2006/10/04 00:29:53 momjian Exp $ + * $PostgreSQL: pgsql/src/backend/optimizer/path/allpaths.c,v 1.154.2.1 2007/01/28 18:50:48 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -383,6 +383,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