Re: Speeding up query pulling comments from pg_catalog

Поиск
Список
Период
Сортировка
От Ken Tanzer
Тема Re: Speeding up query pulling comments from pg_catalog
Дата
Msg-id CAD3a31U5Kb48p32AbiaZqMa-Rg1R3f7JvZY1Vgkx4Y31XqigRg@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Speeding up query pulling comments from pg_catalog  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: Speeding up query pulling comments from pg_catalog  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-performance
On Sat, Jul 20, 2019 at 7:46 AM Tom Lane <tgl@sss.pgh.pa.us> wrote:
But if you do so manually you'll end up with something like

SELECT c.relname AS table, a.attname AS column, d.description AS comment
FROM
  pg_catalog.pg_attribute a JOIN pg_catalog.pg_class c ON a.attrelid = c.oid
  LEFT JOIN pg_catalog.pg_description d ON d.classoid = c.tableoid and d.objoid = c.oid and d.objsubid = a.attnum
WHERE d.description IS NOT NULL;

For me, that formulation is quite a bit faster than the original ---

A lot faster for me too (~30-40 ms).  Thanks!
 

and then to add insult to injury, has to search pg_description a second
time for each hit.
 
Not sure if I'm understanding this correctly, but are you saying that because col_description() is specified in two places in the query, that it actually will get called twice?  I was under the impression that a function (at least a non-volatile one) specified multiple times, but with the same arguments, would only get called once. Is that just wishful thinking?

Cheers,

Ken


--
AGENCY Software  
A Free Software data system
By and for non-profits
(253) 245-3801

learn more about AGENCY or
follow the discussion.

В списке pgsql-performance по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: Speeding up query pulling comments from pg_catalog
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Speeding up query pulling comments from pg_catalog