Postpone calls of unsafe server-side functions in pg_dump. Avoid calling pg_get_partkeydef(), pg_get_expr(relpartbound), and regtypeout until we have lock on the relevant tables. The existing coding is at serious risk of failure if there are any concurrent DROP TABLE commands going on --- including drops of other sessions' temp tables.
Back-patch of commit e3fcbbd62. That's been in v15/HEAD long enough to have some confidence about it, so now let's fix the problem in older branches. Original patch by me; thanks to Gilles Darold for back-patching legwork. Discussion: https://postgr.es/m/[email protected] Discussion: https://postgr.es/m/[email protected] Discussion: https://postgr.es/m/[email protected] Branch ------ REL_14_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/55f30e6c7640c80fbb7be90fad668ee4bffa0e97 Modified Files -------------- src/bin/pg_dump/pg_dump.c | 146 +++++++++++++++++++++++++--------------------- src/bin/pg_dump/pg_dump.h | 4 +- 2 files changed, 79 insertions(+), 71 deletions(-)
