aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/backend/access/heap/tuptoaster.c2
-rw-r--r--src/backend/catalog/index.c4
-rw-r--r--src/backend/commands/cluster.c4
-rw-r--r--src/backend/commands/indexcmds.c4
-rw-r--r--src/backend/commands/matview.c2
-rw-r--r--src/backend/commands/tablecmds.c8
-rw-r--r--src/backend/commands/vacuum.c4
-rw-r--r--src/backend/executor/execIndexing.c2
-rw-r--r--src/backend/optimizer/util/plancat.c6
-rw-r--r--src/backend/parser/parse_utilcmd.c2
-rw-r--r--src/backend/utils/cache/relcache.c6
-rw-r--r--src/include/catalog/pg_index.h9
12 files changed, 22 insertions, 31 deletions
diff --git a/src/backend/access/heap/tuptoaster.c b/src/backend/access/heap/tuptoaster.c
index d1dad998d28..d26c081a1b0 100644
--- a/src/backend/access/heap/tuptoaster.c
+++ b/src/backend/access/heap/tuptoaster.c
@@ -1667,7 +1667,7 @@ toast_save_datum(Relation rel, Datum value,
for (i = 0; i < num_indexes; i++)
{
/* Only index relations marked as ready can be updated */
- if (IndexIsReady(toastidxs[i]->rd_index))
+ if (toastidxs[i]->rd_index->indisready)
index_insert(toastidxs[i], t_values, t_isnull,
&(toasttup->t_self),
toastrel,
diff --git a/src/backend/catalog/index.c b/src/backend/catalog/index.c
index 8709e8c22c7..c2ad944e04a 100644
--- a/src/backend/catalog/index.c
+++ b/src/backend/catalog/index.c
@@ -153,7 +153,7 @@ static void ResetReindexPending(void);
*
* Caller must have suitable lock on the relation.
*
- * Note: we intentionally do not check IndexIsValid here; that's because this
+ * Note: we intentionally do not check indisvalid here; that's because this
* is used to enforce the rule that there can be only one indisprimary index,
* and we want that to be true even if said index is invalid.
*/
@@ -1792,7 +1792,7 @@ BuildIndexInfo(Relation index)
/* other info */
ii->ii_Unique = indexStruct->indisunique;
- ii->ii_ReadyForInserts = IndexIsReady(indexStruct);
+ ii->ii_ReadyForInserts = indexStruct->indisready;
/* assume not doing speculative insertion for now */
ii->ii_UniqueOps = NULL;
ii->ii_UniqueProcs = NULL;
diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 610e425a566..6ae0debe152 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -470,7 +470,7 @@ check_index_is_clusterable(Relation OldHeap, Oid indexOid, bool recheck, LOCKMOD
* might put recently-dead tuples out-of-order in the new table, and there
* is little harm in that.)
*/
- if (!IndexIsValid(OldIndex->rd_index))
+ if (!OldIndex->rd_index->indisvalid)
ereport(ERROR,
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
errmsg("cannot cluster on invalid index \"%s\"",
@@ -545,7 +545,7 @@ mark_index_clustered(Relation rel, Oid indexOid, bool is_internal)
else if (thisIndexOid == indexOid)
{
/* this was checked earlier, but let's be real sure */
- if (!IndexIsValid(indexForm))
+ if (!indexForm->indisvalid)
elog(ERROR, "cannot cluster on invalid index %u", indexOid);
indexForm->indisclustered = true;
CatalogTupleUpdate(pg_index, &indexTuple->t_self, indexTuple);
diff --git a/src/backend/commands/indexcmds.c b/src/backend/commands/indexcmds.c
index 6c06167fb2a..62ec387486e 100644
--- a/src/backend/commands/indexcmds.c
+++ b/src/backend/commands/indexcmds.c
@@ -224,7 +224,7 @@ CheckIndexCompatible(Oid oldId,
*/
if (!(heap_attisnull(tuple, Anum_pg_index_indpred, NULL) &&
heap_attisnull(tuple, Anum_pg_index_indexprs, NULL) &&
- IndexIsValid(indexForm)))
+ indexForm->indisvalid))
{
ReleaseSysCache(tuple);
return false;
@@ -976,7 +976,7 @@ DefineIndex(Oid relationId,
ConstraintSetParentConstraint(cldConstrOid,
createdConstraintId);
- if (!IndexIsValid(cldidx->rd_index))
+ if (!cldidx->rd_index->indisvalid)
invalidate_parent = true;
found = true;
diff --git a/src/backend/commands/matview.c b/src/backend/commands/matview.c
index a171ebabf8f..7605b302bb5 100644
--- a/src/backend/commands/matview.c
+++ b/src/backend/commands/matview.c
@@ -870,7 +870,7 @@ is_usable_unique_index(Relation indexRel)
if (indexStruct->indisunique &&
indexStruct->indimmediate &&
indexRel->rd_rel->relam == BTREE_AM_OID &&
- IndexIsValid(indexStruct) &&
+ indexStruct->indisvalid &&
RelationGetIndexPredicate(indexRel) == NIL &&
indexStruct->indnatts > 0)
{
diff --git a/src/backend/commands/tablecmds.c b/src/backend/commands/tablecmds.c
index 936d7aa611e..c8c50e8c989 100644
--- a/src/backend/commands/tablecmds.c
+++ b/src/backend/commands/tablecmds.c
@@ -8107,7 +8107,7 @@ transformFkeyGetPrimaryKey(Relation pkrel, Oid *indexOid,
if (!HeapTupleIsValid(indexTuple))
elog(ERROR, "cache lookup failed for index %u", indexoid);
indexStruct = (Form_pg_index) GETSTRUCT(indexTuple);
- if (indexStruct->indisprimary && IndexIsValid(indexStruct))
+ if (indexStruct->indisprimary && indexStruct->indisvalid)
{
/*
* Refuse to use a deferrable primary key. This is per SQL spec,
@@ -8228,7 +8228,7 @@ transformFkeyCheckAttrs(Relation pkrel,
*/
if (indexStruct->indnkeyatts == numattrs &&
indexStruct->indisunique &&
- IndexIsValid(indexStruct) &&
+ indexStruct->indisvalid &&
heap_attisnull(indexTuple, Anum_pg_index_indpred, NULL) &&
heap_attisnull(indexTuple, Anum_pg_index_indexprs, NULL))
{
@@ -12461,7 +12461,7 @@ ATExecReplicaIdentity(Relation rel, ReplicaIdentityStmt *stmt, LOCKMODE lockmode
errmsg("cannot use partial index \"%s\" as replica identity",
RelationGetRelationName(indexRel))));
/* And neither are invalid indexes. */
- if (!IndexIsValid(indexRel->rd_index))
+ if (!indexRel->rd_index->indisvalid)
ereport(ERROR,
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
errmsg("cannot use invalid index \"%s\" as replica identity",
@@ -14996,7 +14996,7 @@ validatePartitionedIndex(Relation partedIdx, Relation partedTbl)
elog(ERROR, "cache lookup failed for index %u",
inhForm->inhrelid);
indexForm = (Form_pg_index) GETSTRUCT(indTup);
- if (IndexIsValid(indexForm))
+ if (indexForm->indisvalid)
tuples += 1;
ReleaseSysCache(indTup);
}
diff --git a/src/backend/commands/vacuum.c b/src/backend/commands/vacuum.c
index 25b3b0312c7..38d06b21734 100644
--- a/src/backend/commands/vacuum.c
+++ b/src/backend/commands/vacuum.c
@@ -1754,7 +1754,7 @@ vacuum_rel(Oid relid, RangeVar *relation, int options, VacuumParams *params)
* specified kind of lock on each. Return an array of Relation pointers for
* the indexes into *Irel, and the number of indexes into *nindexes.
*
- * We consider an index vacuumable if it is marked insertable (IndexIsReady).
+ * We consider an index vacuumable if it is marked insertable (indisready).
* If it isn't, probably a CREATE INDEX CONCURRENTLY command failed early in
* execution, and what we have is too corrupt to be processable. We will
* vacuum even if the index isn't indisvalid; this is important because in a
@@ -1789,7 +1789,7 @@ vac_open_indexes(Relation relation, LOCKMODE lockmode,
Relation indrel;
indrel = index_open(indexoid, lockmode);
- if (IndexIsReady(indrel->rd_index))
+ if (indrel->rd_index->indisready)
(*Irel)[i++] = indrel;
else
index_close(indrel, lockmode);
diff --git a/src/backend/executor/execIndexing.c b/src/backend/executor/execIndexing.c
index 8b35bb458de..bbd2726ceeb 100644
--- a/src/backend/executor/execIndexing.c
+++ b/src/backend/executor/execIndexing.c
@@ -184,7 +184,7 @@ ExecOpenIndices(ResultRelInfo *resultRelInfo, bool speculative)
* For each index, open the index relation and save pg_index info. We
* acquire RowExclusiveLock, signifying we will update the index.
*
- * Note: we do this even if the index is not IndexIsReady; it's not worth
+ * Note: we do this even if the index is not indisready; it's not worth
* the trouble to optimize for the case where it isn't.
*/
i = 0;
diff --git a/src/backend/optimizer/util/plancat.c b/src/backend/optimizer/util/plancat.c
index a570ac0aabe..5790b62369c 100644
--- a/src/backend/optimizer/util/plancat.c
+++ b/src/backend/optimizer/util/plancat.c
@@ -201,9 +201,9 @@ get_relation_info(PlannerInfo *root, Oid relationObjectId, bool inhparent,
* queries. Note that this is OK because the data structure we
* are constructing is only used by the planner --- the executor
* still needs to insert into "invalid" indexes, if they're marked
- * IndexIsReady.
+ * indisready.
*/
- if (!IndexIsValid(index))
+ if (!index->indisvalid)
{
index_close(indexRelation, NoLock);
continue;
@@ -696,7 +696,7 @@ infer_arbiter_indexes(PlannerInfo *root)
idxRel = index_open(indexoid, RowExclusiveLock);
idxForm = idxRel->rd_index;
- if (!IndexIsValid(idxForm))
+ if (!idxForm->indisvalid)
goto next;
/*
diff --git a/src/backend/parser/parse_utilcmd.c b/src/backend/parser/parse_utilcmd.c
index 52582d0a13f..807bb9bae21 100644
--- a/src/backend/parser/parse_utilcmd.c
+++ b/src/backend/parser/parse_utilcmd.c
@@ -1970,7 +1970,7 @@ transformIndexConstraint(Constraint *constraint, CreateStmtContext *cxt)
index_name, RelationGetRelationName(heap_rel)),
parser_errposition(cxt->pstate, constraint->location)));
- if (!IndexIsValid(index_form))
+ if (!index_form->indisvalid)
ereport(ERROR,
(errcode(ERRCODE_OBJECT_NOT_IN_PREREQUISITE_STATE),
errmsg("index \"%s\" is not valid", index_name),
diff --git a/src/backend/utils/cache/relcache.c b/src/backend/utils/cache/relcache.c
index c3071db1cdf..c88871fd3ce 100644
--- a/src/backend/utils/cache/relcache.c
+++ b/src/backend/utils/cache/relcache.c
@@ -4221,7 +4221,7 @@ RelationGetFKeyList(Relation relation)
* so that we must recompute the index list on next request. This handles
* creation or deletion of an index.
*
- * Indexes that are marked not IndexIsLive are omitted from the returned list.
+ * Indexes that are marked not indislive are omitted from the returned list.
* Such indexes are expected to be dropped momentarily, and should not be
* touched at all by any caller of this function.
*
@@ -4288,7 +4288,7 @@ RelationGetIndexList(Relation relation)
* HOT-safety decisions. It's unsafe to touch such an index at all
* since its catalog entries could disappear at any instant.
*/
- if (!IndexIsLive(index))
+ if (!index->indislive)
continue;
/* Add index's OID to result list in the proper order */
@@ -4299,7 +4299,7 @@ RelationGetIndexList(Relation relation)
* interesting for either oid indexes or replication identity indexes,
* so don't check them.
*/
- if (!IndexIsValid(index) || !index->indisunique ||
+ if (!index->indisvalid || !index->indisunique ||
!index->indimmediate ||
!heap_attisnull(htup, Anum_pg_index_indpred, NULL))
continue;
diff --git a/src/include/catalog/pg_index.h b/src/include/catalog/pg_index.h
index ebe8955bf38..a10c26b70ac 100644
--- a/src/include/catalog/pg_index.h
+++ b/src/include/catalog/pg_index.h
@@ -77,13 +77,4 @@ typedef FormData_pg_index *Form_pg_index;
#endif /* EXPOSE_TO_CLIENT_CODE */
-/*
- * Use of these macros is recommended over direct examination of the state
- * flag columns where possible; this allows source code compatibility with
- * the hacky representation used in 9.2.
- */
-#define IndexIsValid(indexForm) ((indexForm)->indisvalid)
-#define IndexIsReady(indexForm) ((indexForm)->indisready)
-#define IndexIsLive(indexForm) ((indexForm)->indislive)
-
#endif /* PG_INDEX_H */