@@ -74,8 +74,8 @@ gen_db_file_maps(DbInfo *old_db, DbInfo *new_db,
7474 num_maps ++ ;
7575
7676 /*
77- * so much for the mapping of this relation. Now we need a mapping for
78- * its corresponding toast relation if any.
77+ * So much for mapping this relation; now we need a mapping
78+ * for its corresponding toast relation, if any.
7979 */
8080 if (oldrel -> toastrelid > 0 )
8181 {
@@ -117,6 +117,7 @@ gen_db_file_maps(DbInfo *old_db, DbInfo *new_db,
117117 newrel -> reloid );
118118
119119 /* look them up in their respective arrays */
120+ /* we lose our cache location here */
120121 old_toast = relarr_lookup_rel (& old_db -> rel_arr ,
121122 "pg_toast" , old_name , CLUSTER_OLD );
122123 new_toast = relarr_lookup_rel (& new_db -> rel_arr ,
@@ -385,7 +386,7 @@ get_rel_infos(const DbInfo *dbinfo, RelInfoArr *relarr, Cluster whichCluster)
385386
386387 relarr -> rels = relinfos ;
387388 relarr -> nrels = num_rels ;
388- relarr -> cache_name_rel = 0 ;
389+ relarr -> last_relname_lookup = 0 ;
389390}
390391
391392
@@ -399,9 +400,6 @@ dbarr_lookup_db(DbInfoArr *db_arr, const char *db_name)
399400{
400401 int dbnum ;
401402
402- if (!db_arr || !db_name )
403- return NULL ;
404-
405403 for (dbnum = 0 ; dbnum < db_arr -> ndbs ; dbnum ++ )
406404 {
407405 if (strcmp (db_arr -> dbs [dbnum ].db_name , db_name ) == 0 )
@@ -424,24 +422,21 @@ relarr_lookup_rel(RelInfoArr *rel_arr, const char *nspname,
424422{
425423 int relnum ;
426424
427- if (!rel_arr || !relname )
428- return NULL ;
429-
430425 /* Test next lookup first, for speed */
431- if (rel_arr -> cache_name_rel + 1 < rel_arr -> nrels &&
432- strcmp (rel_arr -> rels [rel_arr -> cache_name_rel + 1 ].nspname , nspname ) == 0 &&
433- strcmp (rel_arr -> rels [rel_arr -> cache_name_rel + 1 ].relname , relname ) == 0 )
426+ if (rel_arr -> last_relname_lookup + 1 < rel_arr -> nrels &&
427+ strcmp (rel_arr -> rels [rel_arr -> last_relname_lookup + 1 ].nspname , nspname ) == 0 &&
428+ strcmp (rel_arr -> rels [rel_arr -> last_relname_lookup + 1 ].relname , relname ) == 0 )
434429 {
435- rel_arr -> cache_name_rel ++ ;
436- return & rel_arr -> rels [rel_arr -> cache_name_rel ];
430+ rel_arr -> last_relname_lookup ++ ;
431+ return & rel_arr -> rels [rel_arr -> last_relname_lookup ];
437432 }
438433
439434 for (relnum = 0 ; relnum < rel_arr -> nrels ; relnum ++ )
440435 {
441436 if (strcmp (rel_arr -> rels [relnum ].nspname , nspname ) == 0 &&
442437 strcmp (rel_arr -> rels [relnum ].relname , relname ) == 0 )
443438 {
444- rel_arr -> cache_name_rel = relnum ;
439+ rel_arr -> last_relname_lookup = relnum ;
445440 return & rel_arr -> rels [relnum ];
446441 }
447442 }
@@ -464,9 +459,6 @@ relarr_lookup_reloid(RelInfoArr *rel_arr, Oid oid,
464459{
465460 int relnum ;
466461
467- if (!rel_arr || !oid )
468- return NULL ;
469-
470462 for (relnum = 0 ; relnum < rel_arr -> nrels ; relnum ++ )
471463 {
472464 if (rel_arr -> rels [relnum ].reloid == oid )
@@ -483,7 +475,7 @@ relarr_free(RelInfoArr *rel_arr)
483475{
484476 pg_free (rel_arr -> rels );
485477 rel_arr -> nrels = 0 ;
486- rel_arr -> cache_name_rel = 0 ;
478+ rel_arr -> last_relname_lookup = 0 ;
487479}
488480
489481
0 commit comments