aboutsummaryrefslogtreecommitdiff
path: root/src/backend/executor/execMain.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/executor/execMain.c')
-rw-r--r--src/backend/executor/execMain.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/backend/executor/execMain.c b/src/backend/executor/execMain.c
index fa98950ac1f..863c13b64ec 100644
--- a/src/backend/executor/execMain.c
+++ b/src/backend/executor/execMain.c
@@ -26,7 +26,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/executor/execMain.c,v 1.105 2000/01/17 23:57:45 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/executor/execMain.c,v 1.106 2000/01/19 23:54:53 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -1487,7 +1487,6 @@ ExecRelCheck(Relation rel, HeapTuple tuple, EState *estate)
RangeTblEntry *rte = makeNode(RangeTblEntry);
List *rtlist;
List *qual;
- bool res;
int i;
slot->val = tuple;
@@ -1526,9 +1525,12 @@ ExecRelCheck(Relation rel, HeapTuple tuple, EState *estate)
{
qual = estate->es_result_relation_constraints[i];
- res = ExecQual(qual, econtext);
-
- if (!res)
+ /*
+ * NOTE: SQL92 specifies that a NULL result from a constraint
+ * expression is not to be treated as a failure. Therefore,
+ * tell ExecQual to return TRUE for NULL.
+ */
+ if (! ExecQual(qual, econtext, true))
return check[i].ccname;
}