On Tue, 15 Oct 2024 at 10:09, Alexander Korotkov <aekorotkov@gmail.com> wrote:
> > /* 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.
Thank you Alexander for the fixes. The last version of the patch looks
good to me.
> I'm not sure I get the point. This check ensures that type entry has
> something to be cleared. In this case we need to keep
> RelIdToTypeIdCacheHash entry to find this item on invalidation
> message. I'm not sure how TCFLAGS_DOMAIN_BASE_IS_COMPOSITE is
> relevant here, because it's valid only for TYPTYPE_DOMAIN while this
> patch deals with TYPTYPE_COMPOSITE.
Regarding this discussion earlier, I assumed that TYPTYPE_DOMAIN also
needs to be handled by `insert_rel_type_cache_if_needed()`. And it
seems that handling of TYPTYPE_DOMAIN will remain the same as before.
--
Kind regards,
Artur