aboutsummaryrefslogtreecommitdiff
path: root/src/backend/catalog/index.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/catalog/index.c')
-rw-r--r--src/backend/catalog/index.c15
1 files changed, 7 insertions, 8 deletions
diff --git a/src/backend/catalog/index.c b/src/backend/catalog/index.c
index e75df632a8c..e47a9b42892 100644
--- a/src/backend/catalog/index.c
+++ b/src/backend/catalog/index.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/catalog/index.c,v 1.188 2002/08/05 03:29:16 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/catalog/index.c,v 1.189 2002/08/11 21:17:34 tgl Exp $
*
*
* INTERFACE ROUTINES
@@ -578,14 +578,18 @@ index_create(Oid heapRelationId,
indexTupDesc->tdhasoid = WITHOUTOID;
/*
- * create the index relation (but don't create storage yet)
+ * create the index relation's relcache entry and physical disk file.
+ * (If we fail further down, it's the smgr's responsibility to remove
+ * the disk file again.)
*/
indexRelation = heap_create(indexRelationName,
namespaceId,
indexTupDesc,
shared_relation,
- false,
+ true,
allow_system_table_mods);
+
+ /* Fetch the relation OID assigned by heap_create */
indexoid = RelationGetRelid(indexRelation);
/*
@@ -612,11 +616,6 @@ index_create(Oid heapRelationId,
UpdateRelationRelation(indexRelation);
/*
- * We create the disk file for this relation here
- */
- heap_storage_create(indexRelation);
-
- /*
* now update the object id's of all the attribute tuple forms in the
* index relation's tuple descriptor
*/