diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2005-03-25 18:04:34 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2005-03-25 18:04:34 +0000 |
commit | 410fede0dd8e2effd05aa97baba9fe0fbb23b915 (patch) | |
tree | d9a25d96cab31625230c27ee1fba4f2dae6646ff /src/backend/commands/tablecmds.c | |
parent | 6d3f74d80190eb8da873b06aec24966f5921766e (diff) | |
download | postgresql-410fede0dd8e2effd05aa97baba9fe0fbb23b915.tar.gz postgresql-410fede0dd8e2effd05aa97baba9fe0fbb23b915.zip |
Fix two bugs in change_owner_recurse_to_sequences: it was grabbing an
overly strong lock on pg_depend, and it wasn't closing the rel when done.
The latter bug was masked by the ResourceOwner code, which is something
that should be changed.
Diffstat (limited to 'src/backend/commands/tablecmds.c')
-rw-r--r-- | src/backend/commands/tablecmds.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/backend/commands/tablecmds.c b/src/backend/commands/tablecmds.c index 7c19bcd3363..b441b09b0b1 100644 --- a/src/backend/commands/tablecmds.c +++ b/src/backend/commands/tablecmds.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/commands/tablecmds.c,v 1.150 2005/03/24 00:03:22 neilc Exp $ + * $PostgreSQL: pgsql/src/backend/commands/tablecmds.c,v 1.151 2005/03/25 18:04:34 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -5374,7 +5374,7 @@ change_owner_recurse_to_sequences(Oid relationOid, int32 newOwnerSysId) * SERIAL sequences are those having an internal dependency on one * of the table's columns (we don't care *which* column, exactly). */ - depRel = heap_openr(DependRelationName, RowExclusiveLock); + depRel = heap_openr(DependRelationName, AccessShareLock); ScanKeyInit(&key[0], Anum_pg_depend_refclassid, @@ -5420,6 +5420,8 @@ change_owner_recurse_to_sequences(Oid relationOid, int32 newOwnerSysId) } systable_endscan(scan); + + relation_close(depRel, AccessShareLock); } /* |