Re: found xmin from before relfrozenxid on pg_catalog.pg_authid

Поиск
Список
Период
Сортировка
Искать
От
Nishant, Fnu
Тема
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid
Дата
в 18:07:52
Msg-id
5AA972C7-DF64-4EAF-8828-A21AE05E18CB@amazon.com
Ответ на
Список
Дерево обсуждения
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid Tom Lane <tgl@sss.pgh.pa.us>
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid Andres Freund <andres@anarazel.de>
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid Andres Freund <andres@anarazel.de>
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid Alvaro Herrera <alvherre@2ndquadrant.com>
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid Alvaro Herrera <alvherre@2ndquadrant.com>
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid Andres Freund <andres@anarazel.de>
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid Andres Freund <andres@anarazel.de>
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid Andres Freund <andres@anarazel.de>
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid Matheus de Oliveira <matioli.matheus@gmail.com>
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid Andres Freund <andres@anarazel.de>
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid Sergey Burladyan <eshkinkot@gmail.com>
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid Andres Freund <andres@anarazel.de>
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid Matheus de Oliveira <matioli.matheus@gmail.com>
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid Jerry Sievers <gsievers19@comcast.net>
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid Kyle Samson <kysamson@tripadvisor.com>
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid Peter Geoghegan <pg@bowt.ie>
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid Bruce Momjian <bruce@momjian.us>
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid Matheus de Oliveira <matioli.matheus@gmail.com>
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid Andres Freund <andres@anarazel.de>
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid Jeremy Finzel <finzelj@gmail.com>
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid "Nishant, Fnu" <nishantf@amazon.com>
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid Andres Freund <andres@anarazel.de>
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid "Nishant, Fnu" <nishantf@amazon.com>
Re: found xmin from before relfrozenxid on pg_catalog.pg_authid Andres Freund <andres@anarazel.de>
Hi,
We were working on this issue and thinking if we could actually make pg_class(rd_rel) part of recache entry upgradable.
To achieve this we can allocate Form_pg_class structures (for shared relations… a small number) on shared memory.
We do not need global pg_internal_init file as new backend during boot up will be set to point at already stored Form_pg_class structure.

Thanks,
Nishant

On 5/27/18, 1:01 PM, "Andres Freund"  wrote:

    Hi,
    
    On 2018-05-27 13:22:21 -0400, Tom Lane wrote:
    > 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.
    
    Yea, it's not that problematic. We already remove the local init
    file. I started out trying to write a version of invalidation that also
    WAL logs shared inval, but that turns out to be hard to do without
    breaking compatibilty.  So I think we should just always unlink the
    shared one - that seems to work well.
    
    
    > 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.
    
    But that's what RelationReloadIndexInfo() etc do?
    	relp = (Form_pg_class) GETSTRUCT(pg_class_tuple);
    	memcpy(relation->rd_rel, relp, CLASS_TUPLE_SIZE);
    I don't think we need to modify anything outside of rd_rel at this
    point?
    
    I've a patch that seems to work, that mostly needs some comment
    polishing.
    
    Greetings,
    
    Andres Freund
    
    

В списке pgsql-hackers по дате отправления
От: Alvaro Herrera
Дата:
От: Tom Lane
Дата:
FAQ