Hi ALL, Need your suggestions. initially_valid flag is added to make column constraint valid. (commit : http://www.postgresql.org/message-id/e1q2ak9-0006hk...@gemulon.postgresql.org)
IFAICU, initially_valid and skip_validation values are mutually exclusive at constraint creation(ref: gram.y), unless it set explicitly. Can we pass initially_valid instead of !skip_validation to StoreRelCheck() in AddRelationNewConstraints(), as shown below? ========================================================================================== diff --git a/src/backend/catalog/heap.c b/src/backend/catalog/heap.c index 7d7d062..04c4f8f 100644 --- a/src/backend/catalog/heap.c +++ b/src/backend/catalog/heap.c @@ -2349,7 +2349,7 @@ AddRelationNewConstraints(Relation rel, * OK, store it. */ constrOid = - StoreRelCheck(rel, ccname, expr, !cdef->skip_validation, is_local, + StoreRelCheck(rel, ccname, expr, cdef->initially_valid, is_local, is_local ? 0 : 1, cdef->is_no_inherit, is_internal); numchecks++; ========================================================================================== This will make code more readable & in my case this could enable to skip validation of existing data as well as mark check constraint valid, when we have assurance that modified/added constraint are valid. Comments? Thoughts? Regards, Amul Sul -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers