Repair AlterTableOwner --- was failing for relations with indexes.
authorTom Lane <[email protected]>
Mon, 17 Jun 2002 14:31:32 +0000 (14:31 +0000)
committerTom Lane <[email protected]>
Mon, 17 Jun 2002 14:31:32 +0000 (14:31 +0000)
src/backend/commands/tablecmds.c

index aff1590f11be62db122ba7ee1388e92617a4be27..3bcf774ba29e359ad0ad9520544572e96a6d073f 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *   $Header: /cvsroot/pgsql/src/backend/commands/tablecmds.c,v 1.16 2002/05/21 22:05:54 tgl Exp $
+ *   $Header: /cvsroot/pgsql/src/backend/commands/tablecmds.c,v 1.17 2002/06/17 14:31:32 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -2747,7 +2747,8 @@ AlterTableOwner(Oid relationOid, int32 newOwnerSysId)
    Form_pg_class   tuple_class;
 
    /* Get exclusive lock till end of transaction on the target table */
-   target_rel = heap_open(relationOid, AccessExclusiveLock);
+   /* Use relation_open here so that we work on indexes... */
+   target_rel = relation_open(relationOid, AccessExclusiveLock);
 
    /* Get its pg_class tuple, too */
    class_rel = heap_openr(RelationRelationName, RowExclusiveLock);
@@ -2807,7 +2808,7 @@ AlterTableOwner(Oid relationOid, int32 newOwnerSysId)
 
    heap_freetuple(tuple);
    heap_close(class_rel, RowExclusiveLock);
-   heap_close(target_rel, NoLock);
+   relation_close(target_rel, NoLock);
 }
 
 static void