diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2000-01-19 23:55:03 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2000-01-19 23:55:03 +0000 |
commit | 6d1efd76fb9852b8bc242dcaf35916090d7c5899 (patch) | |
tree | f827384a43f7dc18532337d555038e02498368b0 /src/backend/executor/nodeNestloop.c | |
parent | 08fb7375e35863e0ba2b8bb6a6c75802ca13fe85 (diff) | |
download | postgresql-6d1efd76fb9852b8bc242dcaf35916090d7c5899.tar.gz postgresql-6d1efd76fb9852b8bc242dcaf35916090d7c5899.zip |
Fix handling of NULL constraint conditions: per SQL92 spec, a NULL result
from a constraint condition does not violate the constraint (cf. discussion
on pghackers 12/9/99). Implemented by adding a parameter to ExecQual,
specifying whether to return TRUE or FALSE when the qual result is
really NULL in three-valued boolean logic. Currently, ExecRelCheck is
the only caller that asks for TRUE, but if we find any other places that
have the wrong response to NULL, it'll be easy to fix them.
Diffstat (limited to 'src/backend/executor/nodeNestloop.c')
-rw-r--r-- | src/backend/executor/nodeNestloop.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/src/backend/executor/nodeNestloop.c b/src/backend/executor/nodeNestloop.c index a75e82c0b11..861df1d6e0f 100644 --- a/src/backend/executor/nodeNestloop.c +++ b/src/backend/executor/nodeNestloop.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/executor/nodeNestloop.c,v 1.13 1999/07/16 04:58:51 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/executor/nodeNestloop.c,v 1.14 2000/01/19 23:54:55 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -65,7 +65,6 @@ ExecNestLoop(NestLoop *node, Plan *parent) TupleTableSlot *innerTupleSlot; List *qual; - bool qualResult; ExprContext *econtext; /* ---------------- @@ -208,9 +207,8 @@ ExecNestLoop(NestLoop *node, Plan *parent) * ---------------- */ ENL1_printf("testing qualification"); - qualResult = ExecQual((List *) qual, econtext); - if (qualResult) + if (ExecQual((List *) qual, econtext, false)) { /* ---------------- * qualification was satisified so we project and |