diff --git a/src/backend/storage/ipc/ipci.c b/src/backend/storage/ipc/ipci.c
index 73d0edf8b3fa79facc640cf39ee74a029a487031..360788d85e41e203719c584fd1f55a35e32295c4 100644
--- a/src/backend/storage/ipc/ipci.c
+++ b/src/backend/storage/ipc/ipci.c
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/backend/storage/ipc/ipci.c,v 1.10 1998/06/23 17:52:28 momjian Exp $
+ *	  $Header: /cvsroot/pgsql/src/backend/storage/ipc/ipci.c,v 1.11 1998/06/23 17:59:54 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -92,6 +92,7 @@ CreateSharedMemoryAndSemaphores(IPCKey key)
 	 * ----------------
 	 */
 	InitLocks();
+	InitMultiLevelLockm();
 	if (InitMultiLevelLockm() == INVALID_TABLEID)
 		elog(FATAL, "Couldn't create the lock table");
 
@@ -145,7 +146,7 @@ AttachSharedMemoryAndSemaphores(IPCKey key)
 	 * ----------------
 	 */
 	InitLocks();
-	if (!MultiTableId && InitMultiLevelLockm() == INVALID_TABLEID)
+	if (InitMultiLevelLockm() == INVALID_TABLEID)
 		elog(FATAL, "Couldn't attach to the lock table");
 
 	AttachSharedInvalidationState(key);
diff --git a/src/backend/storage/lmgr/multi.c b/src/backend/storage/lmgr/multi.c
index 19eafc06ce6780b3fb54aab5e8f326cf89bb8817..6c14bcd8958dd39cd280795b77b442f284a597fe 100644
--- a/src/backend/storage/lmgr/multi.c
+++ b/src/backend/storage/lmgr/multi.c
@@ -12,7 +12,7 @@
  *
  *
  * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/backend/storage/lmgr/Attic/multi.c,v 1.13 1998/06/23 17:52:28 momjian Exp $
+ *	  $Header: /cvsroot/pgsql/src/backend/storage/lmgr/Attic/multi.c,v 1.14 1998/06/23 17:59:54 momjian Exp $
  *
  * NOTES:
  *	 (1) The lock.c module assumes that the caller here is doing
@@ -89,6 +89,13 @@ InitMultiLevelLockm()
 {
 	int			tableId;
 
+	/* -----------------------
+	 * If we're already initialized just return the table id.
+	 * -----------------------
+	 */
+	if (MultiTableId)
+		return MultiTableId;
+
 	tableId = LockTabInit("LockTable", MultiConflicts, MultiPrios, 5);
 	MultiTableId = tableId;
 	if (!(MultiTableId))