diff --git a/src/bin/pg_upgrade/server.c b/src/bin/pg_upgrade/server.c index 969e5d63ffba10b593143e49341c5c08746e128e..02b736dbd0bb6fb779d2b3b4808576b6f5db49ad 100644 --- a/src/bin/pg_upgrade/server.c +++ b/src/bin/pg_upgrade/server.c @@ -174,10 +174,11 @@ start_postmaster(ClusterInfo *cluster, bool throw_error) { char cmd[MAXPGPATH * 4 + 1000]; PGconn *conn; - bool exit_hook_registered = false; bool pg_ctl_return = false; char socket_string[MAXPGPATH + 200]; + static bool exit_hook_registered = false; + if (!exit_hook_registered) { atexit(stop_postmaster_atexit);