Fix a bug in the original implementation of redundant-join-clause removal:
authorTom Lane <tgl@sss.pgh.pa.us>
Tue, 31 Jul 2007 19:54:01 +0000 (19:54 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Tue, 31 Jul 2007 19:54:01 +0000 (19:54 +0000)
commit2756cf4ec960fbb16ad25640372c67c46fa32ab4
treeb3d36977446e1017a66572759c8e8b85a4ca7945
parent297d0303ea569163bc5f30169387cd77ab32e929
Fix a bug in the original implementation of redundant-join-clause removal:
clauses in which one side or the other references both sides of the join
cannot be removed as redundant, because that expression won't have been
constrained below the join.  Per report from Sergey Burladyan.
src/backend/optimizer/path/indxpath.c
src/backend/optimizer/plan/createplan.c
src/backend/optimizer/util/relnode.c
src/backend/optimizer/util/restrictinfo.c
src/include/optimizer/restrictinfo.h
src/test/regress/expected/join.out
src/test/regress/expected/join_1.out
src/test/regress/sql/join.sql