pgsql: Ignore extra subquery outputs in set_subquery_size_estimates().

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Ignore extra subquery outputs in set_subquery_size_estimates().
Date: 2013-03-31 22:35:18
Message-ID: E1UMQqM-0000Sm-Fo@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: 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
------
REL9_2_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/0044f456d909b12f6bea2fff4d48fc0848b1b54b

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

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2013-03-31 23:01:09 pgsql: Update release notes for changes through today.
Previous Message Dimitri Fontaine 2013-03-31 21:20:06 Re: [COMMITTERS] pgsql: Allow external recovery_config_directory