From: Tom Lane Date: Fri, 29 Jul 2005 21:40:26 +0000 (+0000) Subject: Back-patch fix for NOT-below-a-NOT case. X-Git-Tag: REL8_0_4~42 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=81f2d972a82fd86b5a01b2ddea7b8e866a760f5e;p=thirdparty%2Fpostgresql.git Back-patch fix for NOT-below-a-NOT case. --- diff --git a/src/backend/optimizer/prep/prepqual.c b/src/backend/optimizer/prep/prepqual.c index 8d92ee317a0..de72ad8141b 100644 --- a/src/backend/optimizer/prep/prepqual.c +++ b/src/backend/optimizer/prep/prepqual.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/optimizer/prep/prepqual.c,v 1.48 2004/12/31 22:00:20 pgsql Exp $ + * $PostgreSQL: pgsql/src/backend/optimizer/prep/prepqual.c,v 1.48.4.1 2005/07/29 21:40:26 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -335,9 +335,10 @@ push_nots(Expr *qual) { /* * Another NOT cancels this NOT, so eliminate the NOT and stop - * negating this branch. + * negating this branch. But search the subexpression for more + * NOTs to simplify. */ - return get_notclausearg(qual); + return find_nots(get_notclausearg(qual)); } else {