Commit a52aa6c6 authored by Bruce Momjian's avatar Bruce Momjian

Clean up pg_upgrade cache lookup code; remove useless NULL pointer tests.

parent 18e752f2
...@@ -74,8 +74,8 @@ gen_db_file_maps(DbInfo *old_db, DbInfo *new_db, ...@@ -74,8 +74,8 @@ gen_db_file_maps(DbInfo *old_db, DbInfo *new_db,
num_maps++; num_maps++;
/* /*
* so much for the mapping of this relation. Now we need a mapping for * So much for mapping this relation; now we need a mapping
* its corresponding toast relation if any. * for its corresponding toast relation, if any.
*/ */
if (oldrel->toastrelid > 0) if (oldrel->toastrelid > 0)
{ {
...@@ -117,6 +117,7 @@ gen_db_file_maps(DbInfo *old_db, DbInfo *new_db, ...@@ -117,6 +117,7 @@ gen_db_file_maps(DbInfo *old_db, DbInfo *new_db,
newrel->reloid); newrel->reloid);
/* look them up in their respective arrays */ /* look them up in their respective arrays */
/* we lose our cache location here */
old_toast = relarr_lookup_rel(&old_db->rel_arr, old_toast = relarr_lookup_rel(&old_db->rel_arr,
"pg_toast", old_name, CLUSTER_OLD); "pg_toast", old_name, CLUSTER_OLD);
new_toast = relarr_lookup_rel(&new_db->rel_arr, new_toast = relarr_lookup_rel(&new_db->rel_arr,
...@@ -385,7 +386,7 @@ get_rel_infos(const DbInfo *dbinfo, RelInfoArr *relarr, Cluster whichCluster) ...@@ -385,7 +386,7 @@ get_rel_infos(const DbInfo *dbinfo, RelInfoArr *relarr, Cluster whichCluster)
relarr->rels = relinfos; relarr->rels = relinfos;
relarr->nrels = num_rels; relarr->nrels = num_rels;
relarr->cache_name_rel = 0; relarr->last_relname_lookup = 0;
} }
...@@ -399,9 +400,6 @@ dbarr_lookup_db(DbInfoArr *db_arr, const char *db_name) ...@@ -399,9 +400,6 @@ dbarr_lookup_db(DbInfoArr *db_arr, const char *db_name)
{ {
int dbnum; int dbnum;
if (!db_arr || !db_name)
return NULL;
for (dbnum = 0; dbnum < db_arr->ndbs; dbnum++) for (dbnum = 0; dbnum < db_arr->ndbs; dbnum++)
{ {
if (strcmp(db_arr->dbs[dbnum].db_name, db_name) == 0) if (strcmp(db_arr->dbs[dbnum].db_name, db_name) == 0)
...@@ -424,16 +422,13 @@ relarr_lookup_rel(RelInfoArr *rel_arr, const char *nspname, ...@@ -424,16 +422,13 @@ relarr_lookup_rel(RelInfoArr *rel_arr, const char *nspname,
{ {
int relnum; int relnum;
if (!rel_arr || !relname)
return NULL;
/* Test next lookup first, for speed */ /* Test next lookup first, for speed */
if (rel_arr->cache_name_rel + 1 < rel_arr->nrels && if (rel_arr->last_relname_lookup + 1 < rel_arr->nrels &&
strcmp(rel_arr->rels[rel_arr->cache_name_rel + 1].nspname, nspname) == 0 && strcmp(rel_arr->rels[rel_arr->last_relname_lookup + 1].nspname, nspname) == 0 &&
strcmp(rel_arr->rels[rel_arr->cache_name_rel + 1].relname, relname) == 0) strcmp(rel_arr->rels[rel_arr->last_relname_lookup + 1].relname, relname) == 0)
{ {
rel_arr->cache_name_rel++; rel_arr->last_relname_lookup++;
return &rel_arr->rels[rel_arr->cache_name_rel]; return &rel_arr->rels[rel_arr->last_relname_lookup];
} }
for (relnum = 0; relnum < rel_arr->nrels; relnum++) for (relnum = 0; relnum < rel_arr->nrels; relnum++)
...@@ -441,7 +436,7 @@ relarr_lookup_rel(RelInfoArr *rel_arr, const char *nspname, ...@@ -441,7 +436,7 @@ relarr_lookup_rel(RelInfoArr *rel_arr, const char *nspname,
if (strcmp(rel_arr->rels[relnum].nspname, nspname) == 0 && if (strcmp(rel_arr->rels[relnum].nspname, nspname) == 0 &&
strcmp(rel_arr->rels[relnum].relname, relname) == 0) strcmp(rel_arr->rels[relnum].relname, relname) == 0)
{ {
rel_arr->cache_name_rel = relnum; rel_arr->last_relname_lookup = relnum;
return &rel_arr->rels[relnum]; return &rel_arr->rels[relnum];
} }
} }
...@@ -464,9 +459,6 @@ relarr_lookup_reloid(RelInfoArr *rel_arr, Oid oid, ...@@ -464,9 +459,6 @@ relarr_lookup_reloid(RelInfoArr *rel_arr, Oid oid,
{ {
int relnum; int relnum;
if (!rel_arr || !oid)
return NULL;
for (relnum = 0; relnum < rel_arr->nrels; relnum++) for (relnum = 0; relnum < rel_arr->nrels; relnum++)
{ {
if (rel_arr->rels[relnum].reloid == oid) if (rel_arr->rels[relnum].reloid == oid)
...@@ -483,7 +475,7 @@ relarr_free(RelInfoArr *rel_arr) ...@@ -483,7 +475,7 @@ relarr_free(RelInfoArr *rel_arr)
{ {
pg_free(rel_arr->rels); pg_free(rel_arr->rels);
rel_arr->nrels = 0; rel_arr->nrels = 0;
rel_arr->cache_name_rel = 0; rel_arr->last_relname_lookup = 0;
} }
......
...@@ -78,7 +78,7 @@ typedef struct ...@@ -78,7 +78,7 @@ typedef struct
{ {
RelInfo *rels; RelInfo *rels;
int nrels; int nrels;
int cache_name_rel; /* cache of last lookup location */ int last_relname_lookup; /* cache of last lookup location */
} RelInfoArr; } RelInfoArr;
/* /*
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment