mirror of
https://github.com/postgres/postgres.git
synced 2025-09-06 13:46:51 +03:00
Remove unnecessary code to handle CONSTR_NOTNULL
Commit 14e87ffa5c
needlessly added support for CONSTR_NOTNULL entries
to StoreConstraints. It's dead code, so remove it.
To make the situation regarding constraint creation clearer, change
comments in heap_create_with_catalog, StoreConstraints, MergeAttributes
to explain which types of constraint are used on each.
Author: 何建 (Jian He) <jian.universality@gmail.com>
Discussion: https://postgr.es/m/CACJufxFxzqrCiUNfjJ0tQU+=nKQkQCGtGzUBude=SMOwj5VNjQ@mail.gmail.com
This commit is contained in:
@@ -427,7 +427,7 @@ heap_create(const char *relname,
|
||||
* 6) AddNewAttributeTuples() is called to register the
|
||||
* new relation's schema in pg_attribute.
|
||||
*
|
||||
* 7) StoreConstraints is called () - vadim 08/22/97
|
||||
* 7) StoreConstraints() is called - vadim 08/22/97
|
||||
*
|
||||
* 8) the relations are closed and the new relation's oid
|
||||
* is returned.
|
||||
@@ -1481,7 +1481,7 @@ heap_create_with_catalog(const char *relname,
|
||||
InvokeObjectPostCreateHookArg(RelationRelationId, relid, 0, is_internal);
|
||||
|
||||
/*
|
||||
* Store any supplied constraints and defaults.
|
||||
* Store any supplied CHECK constraints and defaults.
|
||||
*
|
||||
* NB: this may do a CommandCounterIncrement and rebuild the relcache
|
||||
* entry, so the relation must be valid and self-consistent at this point.
|
||||
@@ -2216,7 +2216,7 @@ StoreRelNotNull(Relation rel, const char *nnname, AttrNumber attnum,
|
||||
}
|
||||
|
||||
/*
|
||||
* Store defaults and constraints (passed as a list of CookedConstraint).
|
||||
* Store defaults and CHECK constraints (passed as a list of CookedConstraint).
|
||||
*
|
||||
* Each CookedConstraint struct is modified to store the new catalog tuple OID.
|
||||
*
|
||||
@@ -2260,13 +2260,6 @@ StoreConstraints(Relation rel, List *cooked_constraints, bool is_internal)
|
||||
numchecks++;
|
||||
break;
|
||||
|
||||
case CONSTR_NOTNULL:
|
||||
con->conoid =
|
||||
StoreRelNotNull(rel, con->name, con->attnum,
|
||||
!con->skip_validation, con->is_local,
|
||||
con->inhcount, con->is_no_inherit);
|
||||
break;
|
||||
|
||||
default:
|
||||
elog(ERROR, "unrecognized constraint type: %d",
|
||||
(int) con->contype);
|
||||
|
@@ -1007,9 +1007,9 @@ DefineRelation(CreateStmt *stmt, char relkind, Oid ownerId,
|
||||
}
|
||||
|
||||
/*
|
||||
* Create the relation. Inherited defaults and constraints are passed in
|
||||
* for immediate handling --- since they don't need parsing, they can be
|
||||
* stored immediately.
|
||||
* Create the relation. Inherited defaults and CHECK constraints are
|
||||
* passed in for immediate handling --- since they don't need parsing,
|
||||
* they can be stored immediately.
|
||||
*/
|
||||
relationId = heap_create_with_catalog(relname,
|
||||
namespaceId,
|
||||
@@ -2437,10 +2437,11 @@ storage_name(char c)
|
||||
* 'is_partition' tells if the table is a partition.
|
||||
*
|
||||
* Output arguments:
|
||||
* 'supconstr' receives a list of constraints belonging to the parents,
|
||||
* updated as necessary to be valid for the child.
|
||||
* 'supnotnulls' receives a list of CookedConstraints that corresponds to
|
||||
* constraints coming from inheritance parents.
|
||||
* 'supconstr' receives a list of CookedConstraint representing
|
||||
* CHECK constraints belonging to parent relations, updated as
|
||||
* necessary to be valid for the child.
|
||||
* 'supnotnulls' receives a list of CookedConstraint representing
|
||||
* not-null constraints based on those from parent relations.
|
||||
*
|
||||
* Return value:
|
||||
* Completed schema list.
|
||||
|
Reference in New Issue
Block a user