aboutsummaryrefslogtreecommitdiff
path: root/src/backend/bootstrap/bootparse.y
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/bootstrap/bootparse.y')
-rw-r--r--src/backend/bootstrap/bootparse.y17
1 files changed, 15 insertions, 2 deletions
diff --git a/src/backend/bootstrap/bootparse.y b/src/backend/bootstrap/bootparse.y
index d080297512d..5585e9b6b9b 100644
--- a/src/backend/bootstrap/bootparse.y
+++ b/src/backend/bootstrap/bootparse.y
@@ -27,6 +27,7 @@
#include "bootstrap/bootstrap.h"
#include "catalog/catalog.h"
#include "catalog/heap.h"
+#include "catalog/namespace.h"
#include "catalog/pg_am.h"
#include "catalog/pg_attribute.h"
#include "catalog/pg_authid.h"
@@ -282,6 +283,7 @@ Boot_DeclareIndexStmt:
XDECLARE INDEX boot_ident oidspec ON boot_ident USING boot_ident LPAREN boot_index_params RPAREN
{
IndexStmt *stmt = makeNode(IndexStmt);
+ Oid relationId;
do_start();
@@ -303,7 +305,12 @@ Boot_DeclareIndexStmt:
stmt->initdeferred = false;
stmt->concurrent = false;
- DefineIndex(stmt,
+ /* locks and races need not concern us in bootstrap mode */
+ relationId = RangeVarGetRelid(stmt->relation, NoLock,
+ false);
+
+ DefineIndex(relationId,
+ stmt,
$4,
false,
false,
@@ -317,6 +324,7 @@ Boot_DeclareUniqueIndexStmt:
XDECLARE UNIQUE INDEX boot_ident oidspec ON boot_ident USING boot_ident LPAREN boot_index_params RPAREN
{
IndexStmt *stmt = makeNode(IndexStmt);
+ Oid relationId;
do_start();
@@ -338,7 +346,12 @@ Boot_DeclareUniqueIndexStmt:
stmt->initdeferred = false;
stmt->concurrent = false;
- DefineIndex(stmt,
+ /* locks and races need not concern us in bootstrap mode */
+ relationId = RangeVarGetRelid(stmt->relation, NoLock,
+ false);
+
+ DefineIndex(relationId,
+ stmt,
$5,
false,
false,