Hi, Jian! Thank you for your review.
On Tue, Oct 15, 2024 at 10:34 AM jian he <jian.universal...@gmail.com> wrote: > I don't fully understand all of it. but I did some tests anyway. > > static void > cleanup_in_progress_typentries(void) > { > int i; > if (in_progress_list_len > 1) > elog(INFO, "%s:%d in_progress_list_len > 1", __FILE_NAME__, __LINE__); > for (i = 0; i < in_progress_list_len; i++) > { > TypeCacheEntry *typentry; > typentry = (TypeCacheEntry *) hash_search(TypeCacheHash, > &in_progress_list[i], > HASH_FIND, NULL); > insert_rel_type_cache_if_needed(typentry); > } > in_progress_list_len = 0; > } > > the regress still passed. > I assume "elog(INFO, " won't interfere in cleanup_in_progress_typentries. > So we lack tests for larger in_progress_list_len values or i missed something? Try to run test suite with -DCLOBBER_CACHE_ALWAYS. > /* Call check_delete_rel_type_cache() if we actually cleared something */ > if (hadTupDescOrOpclass) > delete_rel_type_cache_if_needed(typentry); > > /* > * Call check_delete_rel_type_cache() if we cleaned > * TCFLAGS_HAVE_PG_TYPE_DATA flag previously. > */ > if (hadPgTypeData) > delete_rel_type_cache_if_needed(typentry); > > check_delete_rel_type_cache don't exist, so these comments are wrong? Yep, they didn't get updated. Fixed in the attached patchset. ------ Regards, Alexander Korotkov Supabase
v13-0001-Update-header-comment-for-lookup_type_cache.patch
Description: Binary data
v13-0002-Avoid-looping-over-all-type-cache-entries-in-Typ.patch
Description: Binary data