Andres Freund <andres@anarazel.de> writes:
> On May 27, 2018 9:39:49 AM PDT, "Nasby, Jim" <nasbyj@amazon.com> wrote:
>> How about only keeping the critical info for being able to find
>> relations in the .init files, and then fully populate the cache by
>> doing a normal lookup?
> Then the cache wouldn't have any benefits, no? It's been a while, but last time I checked it does make quite a
measurableperformance difference in a new backend.
Yeah, we don't want to lose the performance benefit. But I don't think
there's any need for special magic here: we just have to accept the fact
that there's a need to flush that cache sometimes. In normal use it
shouldn't happen often enough to be a performance problem.
FWIW, I'm not on board with "memcpy the whole row". I think the right
thing is more like what we do in RelationReloadIndexInfo, ie copy over
the specific fields that we expect to be mutable.
regards, tom lane