diff options
| author | Tom Lane <tgl@sss.pgh.pa.us> | 2003-12-28 21:57:37 +0000 |
|---|---|---|
| committer | Tom Lane <tgl@sss.pgh.pa.us> | 2003-12-28 21:57:37 +0000 |
| commit | c607bd693ffcf225b7ef696ca44b537076038854 (patch) | |
| tree | 5284d0d0f9b8d671dedd379199bdbba114f8a352 /src/include/optimizer/prep.h | |
| parent | d167fb10153a2f00c9a8b46df537a202f7755cb9 (diff) | |
Clean up the usage of canonicalize_qual(): in particular, be consistent
about whether it is applied before or after eval_const_expressions().
I believe there were some corner cases where the system would fail to
recognize that a partial index is applicable because of the previous
inconsistency. Store normal rather than 'implicit AND' representations
of constraints and index predicates in the catalogs.
initdb forced due to representation change of constraints/predicates.
Diffstat (limited to 'src/include/optimizer/prep.h')
| -rw-r--r-- | src/include/optimizer/prep.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/include/optimizer/prep.h b/src/include/optimizer/prep.h index 060b25b314c..6255c362307 100644 --- a/src/include/optimizer/prep.h +++ b/src/include/optimizer/prep.h @@ -7,7 +7,7 @@ * Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $PostgreSQL: pgsql/src/include/optimizer/prep.h,v 1.42 2003/11/29 22:41:07 pgsql Exp $ + * $PostgreSQL: pgsql/src/include/optimizer/prep.h,v 1.43 2003/12/28 21:57:37 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -36,8 +36,8 @@ extern Relids get_relids_for_join(Query *parse, int joinrelid); /* * prototypes for prepqual.c */ -extern List *canonicalize_qual(Expr *qual, bool removeAndFlag); -extern List *cnfify(Expr *qual, bool removeAndFlag); +extern Expr *canonicalize_qual(Expr *qual); +extern Node *flatten_andors(Node *node); /* * prototypes for preptlist.c |
