postgresql/src/test/regress/expected
Tom Lane 5a6c168c78 Fix some more problems with nested append relations.
As of commit a87c72915 (which later got backpatched as far as 9.1),
we're explicitly supporting the notion that append relations can be
nested; this can occur when UNION ALL constructs are nested, or when
a UNION ALL contains a table with inheritance children.

Bug #11457 from Nelson Page, as well as an earlier report from Elvis
Pranskevichus, showed that there were still nasty bugs associated with such
cases: in particular the EquivalenceClass mechanism could try to generate
"join" clauses connecting an appendrel child to some grandparent appendrel,
which would result in assertion failures or bogus plans.

Upon investigation I concluded that all current callers of
find_childrel_appendrelinfo() need to be fixed to explicitly consider
multiple levels of parent appendrels.  The most complex fix was in
processing of "broken" EquivalenceClasses, which are ECs for which we have
been unable to generate all the derived equality clauses we would like to
because of missing cross-type equality operators in the underlying btree
operator family.  That code path is more or less entirely untested by
the regression tests to date, because no standard opfamilies have such
holes in them.  So I wrote a new regression test script to try to exercise
it a bit, which turned out to be quite a worthwhile activity as it exposed
existing bugs in all supported branches.

The present patch is essentially the same as far back as 9.2, which is
where parameterized paths were introduced.  In 9.0 and 9.1, we only need
to back-patch a small fragment of commit 5b7b5518d, which fixes failure to
propagate out the original WHERE clauses when a broken EC contains constant
members.  (The regression test case results show that these older branches
are noticeably stupider than 9.2+ in terms of the quality of the plans
generated; but we don't really care about plan quality in such cases,
only that the plan not be outright wrong.  A more invasive fix in the
older branches would not be a good idea anyway from a plan-stability
standpoint.)
2014-10-01 19:31:12 -04:00
..
.gitignore Add a SECURITY LABEL command. 2010-09-27 20:55:27 -04:00
abstime.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
advisory_lock.out Add transaction-level advisory locks. 2011-02-18 14:05:12 +09:00
aggregates.out Support ordered-set (WITHIN GROUP) aggregates. 2013-12-23 16:11:35 -05:00
alter_generic.out Fix whitespace issues found by git diff --check, add gitattributes 2013-11-10 14:48:29 -05:00
alter_table.out Revert "Allow units to be specified in relation option setting value." 2014-08-29 05:10:47 +09:00
arrays.out Add width_bucket(anyelement, anyarray). 2014-09-09 15:34:14 -04:00
async.out Regression tests for LISTEN/NOTIFY/UNLISTEN/pg_notify. 2013-07-03 11:07:08 -04:00
bit.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
bitmapops.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
boolean.out Clean up references to SQL92 2013-04-20 11:04:41 -04:00
box.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
btree_index.out Fix breakage of bitmap scan plan creation for special index operators such 2008-11-20 19:52:54 +00:00
case.out Clean up references to SQL92 2013-04-20 11:04:41 -04:00
char.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
char_1.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
char_2.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
circle.out Add a bunch of new error location reports to parse-analysis error messages. 2008-09-01 20:42:46 +00:00
cluster.out Reduce messages about implicit indexes and sequences to DEBUG1. 2012-07-04 20:35:29 -04:00
collate.linux.utf8.out Update collate.linux.utf8.out for ruleutils.c line-wrapping changes. 2013-05-08 22:47:33 -04:00
collate.out Revert "Hopefully-portable regression tests for CREATE/ALTER/DROP COLLATION." 2013-07-03 13:27:50 -04:00
combocid.out Avoid incrementing the CommandCounter when CommandCounterIncrement is called 2007-11-30 21:22:54 +00:00
comments.out Implement nested block comments in the backend and in psql. 2000-07-14 15:43:57 +00:00
conversion.out Support hex-string input and output for type BYTEA. 2009-08-04 16:08:37 +00:00
copy2.out copy: update docs for FORCE_NULL and FORCE_NOT_NULL combination 2014-04-22 16:06:37 -04:00
copyselect.out Reduce messages about implicit indexes and sequences to DEBUG1. 2012-07-04 20:35:29 -04:00
create_aggregate.out Allow polymorphic aggregates to have non-polymorphic state data types. 2014-04-23 19:17:41 -04:00
create_cast.out Improve psql's tabular display of wrapped-around data by inserting markers 2009-11-22 05:20:41 +00:00
create_function_3.out Move regression test listing of builtin leakproof functions to opr_sanity.sql. 2014-06-05 13:54:25 +02:00
create_index.out improve hash creation warning message 2014-09-11 13:40:06 -04:00
create_misc.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
create_operator.out Additional regression tests for CREATE OPERATOR. 2013-07-03 10:48:26 -04:00
create_table.out Do jsonb regression test input in the conventional way. 2014-03-23 20:18:06 -04:00
create_table_like.out psql: conditionally display oids and replication identity 2014-04-15 13:28:54 -04:00
create_type.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
create_view.out Partial fix for dropped columns in functions returning composite. 2014-07-19 14:28:52 -04:00
date.out Add make_date() and make_time() functions. 2013-11-17 15:06:50 -05:00
delete.out Reduce messages about implicit indexes and sequences to DEBUG1. 2012-07-04 20:35:29 -04:00
dependency.out Row-Level Security Policies (RLS) 2014-09-19 11:18:35 -04:00
domain.out Reduce messages about implicit indexes and sequences to DEBUG1. 2012-07-04 20:35:29 -04:00
drop_if_exists.out Make DROP IF EXISTS more consistently not fail 2014-01-23 14:40:29 -03:00
enum.out improve hash creation warning message 2014-09-11 13:40:06 -04:00
equivclass.out Fix some more problems with nested append relations. 2014-10-01 19:31:12 -04:00
errors.out Allow empty target list in SELECT. 2013-12-14 20:23:26 -05:00
event_trigger.out Make DROP IF EXISTS more consistently not fail 2014-01-23 14:40:29 -03:00
float4-exp-three-digits.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
float4.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
float8-exp-three-digits-win32.out Revert "Add some regression test cases for denormalized float8 input." 2012-02-04 15:52:09 -05:00
float8-small-is-zero.out Revert "Add some regression test cases for denormalized float8 input." 2012-02-04 15:52:09 -05:00
float8-small-is-zero_1.out Revert "Add some regression test cases for denormalized float8 input." 2012-02-04 15:52:09 -05:00
float8.out Revert "Add some regression test cases for denormalized float8 input." 2012-02-04 15:52:09 -05:00
foreign_data.out Implement IMPORT FOREIGN SCHEMA. 2014-07-10 15:01:43 -04:00
foreign_key.out ALTER TABLE ... ALTER CONSTRAINT for FKs 2013-06-29 00:27:30 +01:00
functional_deps.out Reduce messages about implicit indexes and sequences to DEBUG1. 2012-07-04 20:35:29 -04:00
geometry.out Revive line type 2013-10-09 22:34:38 -04:00
geometry_1.out Update regression tests for line type patch 2013-10-10 19:59:15 -04:00
geometry_2.out Update regression tests for line type patch 2013-10-10 19:59:15 -04:00
guc.out Change SET LOCAL/CONSTRAINTS/TRANSACTION and ABORT behavior 2013-11-25 19:19:40 -05:00
hash_index.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
horology.out Fix to_timestamp/to_date's handling of consecutive spaces in format string. 2014-01-20 13:45:51 -05:00
hs_standby_allowed.out regression test: fix hot standby tests by using repeatable read 2014-04-22 17:23:58 -04:00
hs_standby_check.out Allow read only connections during recovery, known as Hot Standby. 2009-12-19 01:32:45 +00:00
hs_standby_disallowed.out regression test: fix hot standby tests by using repeatable read 2014-04-22 17:23:58 -04:00
hs_standby_functions.out Update standbycheck test output with new ERROR message changes. No changes 2010-05-02 12:28:43 +00:00
indirect_toast.out Add support for multiple kinds of external toast datums. 2013-07-02 13:38:55 -04:00
inet.out Add min and max aggregates for inet/cidr data types. 2014-08-28 22:37:58 -04:00
inherit.out psql: conditionally display oids and replication identity 2014-04-15 13:28:54 -04:00
insert.out When a row fails a not-null constraint, show row's contents in errdetail. 2011-11-29 18:29:18 -05:00
int2.out Improve handling of INT_MIN / -1 and related cases. 2012-11-19 12:24:25 -05:00
int4.out Improve handling of INT_MIN / -1 and related cases. 2012-11-19 12:24:25 -05:00
int8-exp-three-digits.out Improve handling of INT_MIN / -1 and related cases. 2012-11-19 12:24:25 -05:00
int8.out Improve handling of INT_MIN / -1 and related cases. 2012-11-19 12:24:25 -05:00
interval.out Fix interval test, which was broken for floating-point timestamps. 2014-05-06 19:53:59 -07:00
join.out Preserve AND/OR flatness while extracting restriction OR clauses. 2014-09-09 18:35:31 -04:00
json.out Revert 95d737ff to add 'ignore_nulls' 2014-09-29 13:32:22 -04:00
json_1.out Also revert e3ec0728, JSON regression tests 2014-09-29 13:59:32 -04:00
jsonb.out Fix corner-case behaviors in JSON/JSONB field extraction operators. 2014-08-22 13:17:58 -04:00
jsonb_1.out Fix corner-case behaviors in JSON/JSONB field extraction operators. 2014-08-22 13:17:58 -04:00
limit.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
line.out Revert "Tweak "line" test to avoid negative zeros on some platforms" 2013-10-25 15:50:31 -04:00
lock.out Add a basic atomic ops API abstracting away platform/architecture details. 2014-09-25 23:49:05 +02:00
lseg.out Add a bunch of new error location reports to parse-analysis error messages. 2008-09-01 20:42:46 +00:00
macaddr.out improve hash creation warning message 2014-09-11 13:40:06 -04:00
matview.out Assorted message fixes and improvements 2014-09-05 01:25:27 -04:00
money.out Add casts from int4 and int8 to numeric. 2011-04-05 09:35:43 -04:00
name.out Add a "USING" clause to DELETE, which is equivalent to the FROM clause 2005-04-07 01:51:41 +00:00
namespace.out Regression tests for SCHEMA commands 2013-12-11 20:45:15 +00:00
numeric.out Fix power_var_int() for large integer exponents. 2014-09-11 23:30:51 -04:00
numeric_big.out Update numeric_big regress test for 7.0. This has apparently been 2000-03-30 07:13:20 +00:00
numerology.out Remove the special cases to prevent minus-zero results in float4 and float8 2009-02-18 19:23:26 +00:00
numerology_1.out Remove the special cases to prevent minus-zero results in float4 and float8 2009-02-18 19:23:26 +00:00
oid.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
oidjoins.out Update oidjoins regression test for 9.4. 2014-04-16 14:28:59 -04:00
opr_sanity.out Add opr_sanity queries to inspect commutator/negator links more closely. 2014-08-16 13:22:52 -04:00
path.out Add a bunch of new error location reports to parse-analysis error messages. 2008-09-01 20:42:46 +00:00
pg_lsn.out Tweak new regression test case for better portability. 2014-06-04 21:31:41 -04:00
plancache.out Change plan caching to honor, not resist, changes in search_path. 2013-01-25 14:14:41 -05:00
plpgsql.out Check number of parameters in RAISE statement at compile time. 2014-09-02 15:56:50 +03:00
point.out Fix gist_box_same and gist_point_consistent to handle fuzziness correctly. 2013-02-08 18:03:17 -05:00
polygon.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
polymorphism.out Fix ruleutils pretty-printing to not generate trailing whitespace. 2013-11-11 13:36:38 -05:00
portals.out Fix failure to set ActiveSnapshot while rewinding a cursor. 2014-05-07 14:25:11 -04:00
portals_p2.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
prepare.out Improve psql's tabular display of wrapped-around data by inserting markers 2009-11-22 05:20:41 +00:00
prepared_xacts.out Adjust regression tests for error message change 2011-08-15 17:27:10 +03:00
prepared_xacts_1.out Fix a bug with SSI and prepared transactions: 2011-07-07 18:12:15 +03:00
privileges.out Row-Level Security Policies (RLS) 2014-09-19 11:18:35 -04:00
psql.out Add unicode_{column|header|border}_style to psql 2014-09-12 12:04:37 -04:00
random.out Improve random regression tests to fail less frequently. 2004-03-15 15:46:25 +00:00
rangefuncs.out Fix indentation of JOIN clauses in rule/view dumps. 2014-04-30 12:01:19 -04:00
rangetypes.out Fix "element <@ range" cost estimation. 2013-03-21 11:21:51 +02:00
regex.out Fix incorrect search for "x?" style matches in creviterdissect(). 2014-09-23 20:26:14 -04:00
regproc.out Add to_regprocedure() and to_regoperator(). 2014-04-16 12:21:43 -04:00
reltime.out Add a bunch of new error location reports to parse-analysis error messages. 2008-09-01 20:42:46 +00:00
replica_identity.out improve hash creation warning message 2014-09-11 13:40:06 -04:00
returning.out Reduce messages about implicit indexes and sequences to DEBUG1. 2012-07-04 20:35:29 -04:00
rowsecurity.out Fix relcache for policies, and doc updates 2014-09-26 12:46:26 -04:00
rowtypes.out Fix *-qualification of named parameters in SQL-language functions. 2014-02-03 14:47:17 -05:00
rules.out Code review for row security. 2014-09-24 16:32:22 -04:00
sanity_check.out Row-Level Security Policies (RLS) 2014-09-19 11:18:35 -04:00
select.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
select_distinct.out Alter some gratuitous uses of "ANSI" when "SQL standard" might have been 2009-07-11 21:15:32 +00:00
select_distinct_on.out Fix assertion failure when a SELECT DISTINCT ON expression is volatile. 2009-09-12 00:04:59 +00:00
select_having.out Add a bunch of new error location reports to parse-analysis error messages. 2008-09-01 20:42:46 +00:00
select_having_1.out Add a bunch of new error location reports to parse-analysis error messages. 2008-09-01 20:42:46 +00:00
select_having_2.out Add a bunch of new error location reports to parse-analysis error messages. 2008-09-01 20:42:46 +00:00
select_implicit.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
select_implicit_1.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
select_implicit_2.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
select_into.out Restructure SELECT INTO's parsetree representation into CreateTableAsStmt. 2012-03-19 21:38:12 -04:00
select_views.out Fix whitespace issues found by git diff --check, add gitattributes 2013-11-10 14:48:29 -05:00
select_views_1.out Fix whitespace issues found by git diff --check, add gitattributes 2013-11-10 14:48:29 -05:00
sequence.out Implement IF NOT EXISTS for CREATE SEQUENCE. 2014-08-26 16:18:17 +03:00
sequence_1.out Fix longstanding crash-safety bug with newly-created-or-reset sequences. 2012-07-25 17:42:23 -04:00
stats.out Add convenience functions pg_sleep_for and pg_sleep_until. 2014-01-30 15:47:56 -05:00
strings.out Fix regexp_matches() handling of zero-length matches. 2013-07-31 11:31:22 -04:00
subselect.out Fix bug with whole-row references to append subplans. 2014-07-11 19:12:35 -04:00
temp.out Reduce messages about implicit indexes and sequences to DEBUG1. 2012-07-04 20:35:29 -04:00
text.out Move checking an explicit VARIADIC "any" argument into the parser. 2013-07-18 11:52:12 -04:00
time.out Add a bunch of new error location reports to parse-analysis error messages. 2008-09-01 20:42:46 +00:00
timestamp.out Constructors for interval, timestamp, timestamptz 2014-03-04 15:09:43 -03:00
timestamptz.out Be more wary in choice of timezone names to test make_timestamptz with. 2014-05-12 20:21:16 -04:00
timetz.out Add a bunch of new error location reports to parse-analysis error messages. 2008-09-01 20:42:46 +00:00
tinterval.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
transactions.out In RelationClearRelation, postpone cache reload if !IsTransactionState(). 2014-02-06 19:38:06 -05:00
triggers.out Fix ruleutils pretty-printing to not generate trailing whitespace. 2013-11-11 13:36:38 -05:00
truncate.out Reduce messages about implicit indexes and sequences to DEBUG1. 2012-07-04 20:35:29 -04:00
tsdicts.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
tsearch.out Fix ts_rank_cd() to ignore stripped lexemes 2014-03-24 14:37:16 -04:00
tstypes.out Extend GIN to support partial-match searches, and extend tsquery to support 2008-05-16 16:31:02 +00:00
txid.out Handle duplicate XIDs in txid_snapshot. 2014-05-15 18:29:20 +03:00
type_sanity.out Fix CVE-2013-0255 properly. 2013-02-13 16:20:01 -05:00
typed_table.out Reduce messages about implicit indexes and sequences to DEBUG1. 2012-07-04 20:35:29 -04:00
union.out Forward-patch regression test for "could not find pathkey item to sort". 2014-06-26 10:41:48 -07:00
updatable_views.out Fix bogus variable-mangling in security_barrier_replace_vars(). 2014-09-24 15:59:34 -04:00
update.out Implement UPDATE tab SET (col1,col2,...) = (SELECT ...), ... 2014-06-18 13:22:34 -04:00
uuid.out improve hash creation warning message 2014-09-11 13:40:06 -04:00
vacuum.out Reduce messages about implicit indexes and sequences to DEBUG1. 2012-07-04 20:35:29 -04:00
varchar.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
varchar_1.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
varchar_2.out Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
window.out Allow pushdown of WHERE quals into subqueries with window functions. 2014-06-27 23:08:08 -07:00
with.out Reduce indentation/parenthesization of set operations in rule/view dumps. 2014-04-30 13:26:26 -04:00
without_oid.out Combine cmin and cmax fields of HeapTupleHeaders into a single field, by 2007-02-09 03:35:35 +00:00
xml.out Allow empty content in xml type 2014-09-09 11:34:52 -04:00
xml_1.out Allow empty content in xml type 2014-09-09 11:34:52 -04:00
xmlmap.out Add regression tests for XML mapping of domains 2013-03-13 22:42:57 -04:00
xmlmap_1.out Add regression tests for XML mapping of domains 2013-03-13 22:42:57 -04:00