From: | tgl(at)postgresql(dot)org (Tom Lane) |
---|---|
To: | pgsql-committers(at)postgresql(dot)org |
Subject: | pgsql-server/src backend/executor/nodeSubplan. ... |
Date: | 2003-01-09 20:50:53 |
Message-ID: | 20030109205053.62473475E84@postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-committers |
CVSROOT: /cvsroot
Module name: pgsql-server
Changes by: tgl(at)postgresql(dot)org 03/01/09 15:50:53
Modified files:
src/backend/executor: nodeSubplan.c
src/backend/nodes: copyfuncs.c equalfuncs.c outfuncs.c
readfuncs.c
src/backend/optimizer/plan: subselect.c
src/backend/parser: gram.y parse_expr.c
src/backend/utils/adt: ruleutils.c
src/include/catalog: catversion.h
src/include/nodes: primnodes.h
Log message:
Adjust parser so that 'x NOT IN (subselect)' is converted to
'NOT (x IN (subselect))', that is 'NOT (x = ANY (subselect))',
rather than 'x <> ALL (subselect)' as we formerly did. This
opens the door to optimizing NOT IN the same way as IN, whereas
there's no hope of optimizing the expression using <>. Also,
convert 'x <> ALL (subselect)' to the NOT(IN) style, so that
the optimization will be available when processing rules dumped
by older Postgres versions.
initdb forced due to small change in SubLink node representation.
From | Date | Subject | |
---|---|---|---|
Next Message | Peter Eisentraut - PostgreSQL | 2003-01-10 10:59:08 | pgsql-server/src/interfaces/libpq Makefile |
Previous Message | Tom Lane | 2003-01-09 18:27:39 | pgsql-server/contrib/pg_dumplo main.c |