mirror of
https://github.com/postgres/postgres.git
synced 2025-05-02 11:44:50 +03:00
ProcedureCreate neglected to record dependencies on default expressions.
Thus, an object referenced in a default expression could be dropped while the function remained present. This was unaccountably missed in the original patch to add default parameters for functions. Reported by Pavel Stehule.
This commit is contained in:
parent
d56b3afc03
commit
76074fcaa0
@ -599,6 +599,11 @@ ProcedureCreate(const char *procedureName,
|
||||
recordDependencyOn(&myself, &referenced, DEPENDENCY_NORMAL);
|
||||
}
|
||||
|
||||
/* dependency on parameter default expressions */
|
||||
if (parameterDefaults)
|
||||
recordDependencyOnExpr(&myself, (Node *) parameterDefaults,
|
||||
NIL, DEPENDENCY_NORMAL);
|
||||
|
||||
/* dependency on owner */
|
||||
if (!is_update)
|
||||
recordDependencyOnOwner(ProcedureRelationId, retval, proowner);
|
||||
|
Loading…
x
Reference in New Issue
Block a user