pgsql: Ignore extra subquery outputs in set_subquery_size_estimates(). - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: Ignore extra subquery outputs in set_subquery_size_estimates().
Date
Msg-id E1UMQqM-0000Sj-E0@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Ignore extra subquery outputs in set_subquery_size_estimates().

In commit 0f61d4dd1b4f95832dcd81c9688dac56fd6b5687, I added code to copy up
column width estimates for each column of a subquery.  That code supposed
that the subquery couldn't have any output columns that didn't correspond
to known columns of the current query level --- which is true when a query
is parsed from scratch, but the assumption fails when planning a view that
depends on another view that's been redefined (adding output columns) since
the upper view was made.  This results in an assertion failure or even a
crash, as per bug #8025 from lindebg.  Remove the Assert and instead skip
the column if its resno is out of the expected range.

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/d931ac0ec4c25b61f480562a13f1974f913afd59

Modified Files
--------------
src/backend/optimizer/path/costsize.c |   10 +++++++++-
1 files changed, 9 insertions(+), 1 deletions(-)


pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: pgsql: Ignore extra subquery outputs in set_subquery_size_estimates().
Next
From: Tom Lane
Date:
Subject: pgsql: Ignore extra subquery outputs in set_subquery_size_estimates().