diff options
author | Amit Kapila <akapila@postgresql.org> | 2021-06-28 10:56:53 +0530 |
---|---|---|
committer | Amit Kapila <akapila@postgresql.org> | 2021-06-28 10:56:53 +0530 |
commit | ee3fdb8f3465b3a5937a7fe647b7b6584a600647 (patch) | |
tree | b1cc0583267de3abb6b6c951351ad5ed305e0bd1 | |
parent | b786304c2904a4e444fe740bbc2e0b69efacc19d (diff) | |
download | postgresql-ee3fdb8f3465b3a5937a7fe647b7b6584a600647.tar.gz postgresql-ee3fdb8f3465b3a5937a7fe647b7b6584a600647.zip |
Improve RelationGetIdentityKeyBitmap().
We were using RelationGetIndexList() to update the relation's replica
identity index but instead, we can directly use RelationGetReplicaIndex()
which uses the same functionality. This is a minor code readability
improvement.
Author: Japin Li
Reviewed-By: Takamichi Osumi, Amit Kapila
Discussion: https://postgr.es/m/4C99A862-69C8-431F-960A-81B1151F1B89@enterprisedb.com
-rw-r--r-- | src/backend/utils/cache/relcache.c | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/src/backend/utils/cache/relcache.c b/src/backend/utils/cache/relcache.c index d55ae016d09..94fbf1aa190 100644 --- a/src/backend/utils/cache/relcache.c +++ b/src/backend/utils/cache/relcache.c @@ -5244,9 +5244,9 @@ Bitmapset * RelationGetIdentityKeyBitmap(Relation relation) { Bitmapset *idindexattrs = NULL; /* columns in the replica identity */ - List *indexoidlist; Relation indexDesc; int i; + Oid replidindex; MemoryContext oldcxt; /* Quick exit if we already computed the result */ @@ -5260,18 +5260,14 @@ RelationGetIdentityKeyBitmap(Relation relation) /* Historic snapshot must be set. */ Assert(HistoricSnapshotActive()); - indexoidlist = RelationGetIndexList(relation); - - /* Fall out if no indexes (but relhasindex was set) */ - if (indexoidlist == NIL) - return NULL; + replidindex = RelationGetReplicaIndex(relation); /* Fall out if there is no replica identity index */ - if (!OidIsValid(relation->rd_replidindex)) + if (!OidIsValid(replidindex)) return NULL; /* Look up the description for the replica identity index */ - indexDesc = RelationIdGetRelation(relation->rd_replidindex); + indexDesc = RelationIdGetRelation(replidindex); if (!RelationIsValid(indexDesc)) elog(ERROR, "could not open relation with OID %u", @@ -5295,7 +5291,6 @@ RelationGetIdentityKeyBitmap(Relation relation) } RelationClose(indexDesc); - list_free(indexoidlist); /* Don't leak the old values of these bitmaps, if any */ bms_free(relation->rd_idattr); |