On Wed, 17 Apr 2019 at 13:13, Amit Langote
<langote_amit...@lab.ntt.co.jp> wrote:
> When you see this:
>
> explain select * from t1 where dt = current_date + 400;
>                          QUERY PLAN
> ────────────────────────────────────────────────────────────
>  Append  (cost=0.00..198.42 rows=44 width=8)
>    Subplans Removed: 3
>    ->  Seq Scan on t1_1  (cost=0.00..49.55 rows=11 width=8)
>          Filter: (dt = (CURRENT_DATE + 400))
> (4 rows)
>
> Doesn't this give an impression that t1_1 *matches* the WHERE condition
> where it clearly doesn't?  IMO, contorting explain.c to show an empty
> Append like what Hosoya-san suggests doesn't sound too bad given that the
> first reaction to seeing the above result is to think it's a bug of
> partition pruning.

Where do you think the output list for EXPLAIN VERBOSE should put the
output column list in this case? On the Append node, or just not show
them?

-- 
 David Rowley                   http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services


Reply via email to