Fix Assert failure induced by commit 215b43cdc.
authorTom Lane <tgl@sss.pgh.pa.us>
Thu, 19 Jan 2017 23:20:48 +0000 (18:20 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Thu, 19 Jan 2017 23:20:58 +0000 (18:20 -0500)
commitd479e37e3d20efad8b178e0f1e468c086a7519a8
tree8da29b73b3f7a08d256450d37aad5355bc236432
parent182200531a92204b0547d337f50b665d222af168
Fix Assert failure induced by commit 215b43cdc.

I'd somehow talked myself into believing that set_append_rel_size
doesn't need to worry about getting back an AND clause when it applies
eval_const_expressions to the result of adjust_appendrel_attrs (that is,
transposing the appendrel parent's restriction clauses for one child).
But that is nonsense, and Andreas Seltenreich's fuzz tester soon
turned up a counterexample.  Put back the make_ands_implicit step
that was there before, and add a regression test covering the case.

Report: https://postgr.es/m/878tq6vja6.fsf@ansel.ydns.eu
src/backend/optimizer/path/allpaths.c
src/test/regress/expected/union.out
src/test/regress/sql/union.sql