AlterDatabaseSet() forgot to update the indexes on pg_database.
authorTom Lane
Sat, 25 May 2002 16:30:59 +0000 (16:30 +0000)
committerTom Lane
Sat, 25 May 2002 16:30:59 +0000 (16:30 +0000)
src/backend/commands/dbcommands.c

index bdba0dacfc0a145bd4d55a2d31f593034e7036ef..7add59e2c39b6fee2a98b783d8d1cff93a53eb08 100644 (file)
@@ -9,7 +9,7 @@
  *
  *
  * IDENTIFICATION
- *   $Header: /cvsroot/pgsql/src/backend/commands/dbcommands.c,v 1.91 2002/05/21 22:05:54 tgl Exp $
+ *   $Header: /cvsroot/pgsql/src/backend/commands/dbcommands.c,v 1.92 2002/05/25 16:30:59 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -505,6 +505,20 @@ AlterDatabaseSet(AlterDatabaseSetStmt *stmt)
    newtuple = heap_modifytuple(tuple, rel, repl_val, repl_null, repl_repl);
    simple_heap_update(rel, &tuple->t_self, newtuple);
 
+   /*
+    * Update indexes
+    */
+   if (RelationGetForm(rel)->relhasindex)
+   {
+       Relation    idescs[Num_pg_database_indices];
+
+       CatalogOpenIndices(Num_pg_database_indices,
+                          Name_pg_database_indices, idescs);
+       CatalogIndexInsert(idescs, Num_pg_database_indices, rel,
+                          newtuple);
+       CatalogCloseIndices(Num_pg_database_indices, idescs);
+   }
+
    heap_endscan(scan);
    heap_close(rel, RowExclusiveLock);
 }