Обсуждение: pg_dump: Add ExecuteSqlCopy and simplify ExecuteSqlQuery

Поиск
Список
Период
Сортировка

pg_dump: Add ExecuteSqlCopy and simplify ExecuteSqlQuery

От
Corey Huinker
Дата:
The thread about tablecmds.c being too large for some code inspection tooling got me thinking about ways to improve the second worst offender: pg_dump.c.

Those investigations of mine haven't yet revealed a way to split the file that I find effective, let alone helpful. However, it has shown me a few patterns within pg_dump.c that I'm proposing to change.

Of the current 84 calls to the convenience routine ExecuteSqlQuery(), 83 of them are regular queries which expect a result of PGRES_TUPLES_OK. The other one expects PGRES_COPY_OUT. So it seems worthwhile to remove the parameter entirely and assume the caller wants PGRES_TUPLES_OK. For the one exception, ExecuteSqlCopy() is created, though one could argue that we might just do without the convenience routine altogether. Patch attached.
Вложения

Re: pg_dump: Add ExecuteSqlCopy and simplify ExecuteSqlQuery

От
Andreas Karlsson
Дата:
On 12/16/25 10:38 PM, Corey Huinker wrote:
> Of the current 84 calls to the convenience routine ExecuteSqlQuery(), 83 
> of them are regular queries which expect a result of PGRES_TUPLES_OK. 
> The other one expects PGRES_COPY_OUT. So it seems worthwhile to remove 
> the parameter entirely and assume the caller wants PGRES_TUPLES_OK. For 
> the one exception, ExecuteSqlCopy() is created, though one could argue 
> that we might just do without the convenience routine altogether. Patch 
> attached.

The patch looks fine and if I had written it from scratch I would 
probably have done it like in the patch but I do not think the code 
churn is worth what to me feels like a minuscule improvement.

What does others think?

Andreas