pgsql: Use PREPARE/EXECUTE for repetitive per-object queries in pg_dump

Поиск
Список
Период
Сортировка
От Tom Lane
Тема pgsql: Use PREPARE/EXECUTE for repetitive per-object queries in pg_dump
Дата
Msg-id E1muIe0-0007N4-R4@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Use PREPARE/EXECUTE for repetitive per-object queries in pg_dump.

For objects such as functions, pg_dump issues the same secondary
data-collection query against each object to be dumped.  This can't
readily be refactored to avoid the repetitive queries, but we can
PREPARE these queries to reduce planning costs.

This patch applies the idea to functions, aggregates, operators, and
data types.  While it could be carried further, the remaining sorts of
objects aren't likely to appear in typical databases enough times to
be worth worrying over.  Moreover, doing the PREPARE is likely to be a
net loss if there aren't at least some dozens of objects to apply the
prepared query to.

Discussion: https://postgr.es/m/7d7eb6128f40401d81b3b7a898b6b4de@W2012-02.nidsa.loc

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/be85727a3df743a1f7e93b41dd7ac2b667e8ae04

Modified Files
--------------
src/bin/pg_dump/pg_backup.h |  20 +
src/bin/pg_dump/pg_dump.c   | 878 ++++++++++++++++++++++++++------------------
2 files changed, 532 insertions(+), 366 deletions(-)


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

Предыдущее
От: Peter Eisentraut
Дата:
Сообщение: pgsql: Fix inappropriate uses of PG_GETARG_UINT32()
Следующее
От: Peter Eisentraut
Дата:
Сообщение: pgsql: Update snowball