pgsql: Clean up command argument assembly

Поиск
Список
Период
Сортировка
От Peter Eisentraut
Тема pgsql: Clean up command argument assembly
Дата
Msg-id E1qGuwn-001yoQ-2M@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Clean up command argument assembly

Several commands internally assemble command lines to call other
commands.  This includes initdb, pg_dumpall, and pg_regress.  (Also
pg_ctl, but that is different enough that I didn't consider it here.)
This has all evolved a bit organically, with fixed-size buffers, and
various optional command-line arguments being injected with
confusing-looking code, and the spacing between options handled in
inconsistent ways.  Clean all this up a bit to look clearer and be
more easily extensible with new arguments and options.  We start each
command with printfPQExpBuffer(), and then append arguments as
necessary with appendPQExpBuffer().  Also standardize on using
initPQExpBuffer() over createPQExpBuffer() where possible.  pg_regress
uses StringInfo instead of PQExpBuffer, but many of the same ideas
apply.

Reviewed-by: Heikki Linnakangas <hlinnaka@iki.fi>
Discussion: https://www.postgresql.org/message-id/flat/16d0beac-a141-e5d3-60e9-323da75f49bf@eisentraut.org

Branch
------
master

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

Modified Files
--------------
src/bin/initdb/initdb.c       | 56 ++++++++++++++++++++++++-------------------
src/bin/pg_dump/pg_dumpall.c  | 27 +++++++++++----------
src/test/regress/pg_regress.c | 26 ++++++++++++--------
3 files changed, 62 insertions(+), 47 deletions(-)


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

Предыдущее
От: Michael Paquier
Дата:
Сообщение: pgsql: Generate automatically code and documentation related to wait ev
Следующее
От: Masahiko Sawada
Дата:
Сообщение: pgsql: pgstat: fix subscription stats entry leak.