diff options
Diffstat (limited to 'src/backend/catalog/dependency.c')
-rw-r--r-- | src/backend/catalog/dependency.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/backend/catalog/dependency.c b/src/backend/catalog/dependency.c index 6f63232ff54..70c43cdec02 100644 --- a/src/backend/catalog/dependency.c +++ b/src/backend/catalog/dependency.c @@ -8,7 +8,7 @@ * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/catalog/dependency.c,v 1.85 2009/01/01 17:23:36 momjian Exp $ + * $PostgreSQL: pgsql/src/backend/catalog/dependency.c,v 1.86 2009/01/22 20:16:00 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -977,6 +977,13 @@ deleteOneObject(const ObjectAddress *object, Relation depRel) systable_endscan(scan); /* + * Delete shared dependency references related to this object. Again, + * if subId = 0, remove records for sub-objects too. + */ + deleteSharedDependencyRecordsFor(object->classId, object->objectId, + object->objectSubId); + + /* * Now delete the object itself, in an object-type-dependent way. */ doDeletion(object); @@ -988,13 +995,6 @@ deleteOneObject(const ObjectAddress *object, Relation depRel) DeleteComments(object->objectId, object->classId, object->objectSubId); /* - * Delete shared dependency references related to this object. Sub-objects - * (columns) don't have dependencies on global objects, so skip them. - */ - if (object->objectSubId == 0) - deleteSharedDependencyRecordsFor(object->classId, object->objectId); - - /* * CommandCounterIncrement here to ensure that preceding changes are all * visible to the next deletion step. */ |