Re: Re: Refresh Publication takes hours and doesn´t finish
От | Fabrízio de Royes Mello |
---|---|
Тема | Re: Re: Refresh Publication takes hours and doesn´t finish |
Дата | |
Msg-id | CAPfkCSDXY4vDRYta6ppEegedvjo2W9e4B7H+Qbujj-+CnOVfdg@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Re: Refresh Publication takes hours and doesn´t finish (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: Re: Refresh Publication takes hours and doesn´t finish
|
Список | pgsql-general |
Em seg, 20 de mai de 2019 às 18:30, Tom Lane <tgl@sss.pgh.pa.us> escreveu:
>
> Hmm ... given that pg_get_publication_tables() shouldn't return any
> duplicate OIDs, it does seem unnecessarily inefficient to put it in
> an IN-subselect condition. Peter, is there a reason why this isn't
> a straight lateral join? I get a much saner-looking plan from
>
> FROM pg_publication P, pg_class C
> - JOIN pg_namespace N ON (N.oid = C.relnamespace)
> - WHERE C.oid IN (SELECT relid FROM pg_get_publication_tables(P.pubname));
> + JOIN pg_namespace N ON (N.oid = C.relnamespace),
> + LATERAL pg_get_publication_tables(P.pubname)
> + WHERE C.oid = pg_get_publication_tables.relid;
>
And why not just JOIN direct with pg_publication_rel ?
Regards,
--
Fabrízio de Royes Mello Timbira - http://www.timbira.com.br/
PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento
В списке pgsql-general по дате отправления: