vacuumdb: Add missing PQfinish() calls to vacuum_one_database().
authorNathan Bossart <nathan@postgresql.org>
Tue, 4 Feb 2025 19:26:57 +0000 (13:26 -0600)
committerNathan Bossart <nathan@postgresql.org>
Tue, 4 Feb 2025 19:26:57 +0000 (13:26 -0600)
A few of the version checks in vacuum_one_database() do not call
PQfinish() before exiting.  This precedent was unintentionally
established in commit 00d1e88d36, and while it's probably not too
problematic, it seems better to properly close the connection.

Reviewed-by: Daniel Gustafsson <daniel@yesql.se>
Discussion: https://postgr.es/m/Z6JAwqN1I8ljTuXp%40nathan
Backpatch-through: 13

src/bin/scripts/vacuumdb.c

index dac0eac71b9788e0f5b809dc0616a2044a5157b1..d6f36bbed26306b8dadc61e2e2f7b84d8d37cc01 100644 (file)
@@ -514,6 +514,7 @@ vacuum_one_database(ConnParams *cparams,
 
    if (vacopts->min_xid_age != 0 && PQserverVersion(conn) < 90600)
    {
+       PQfinish(conn);
        pg_log_error("cannot use the \"%s\" option on server versions older than PostgreSQL %s",
                     "--min-xid-age", "9.6");
        exit(1);
@@ -521,6 +522,7 @@ vacuum_one_database(ConnParams *cparams,
 
    if (vacopts->min_mxid_age != 0 && PQserverVersion(conn) < 90600)
    {
+       PQfinish(conn);
        pg_log_error("cannot use the \"%s\" option on server versions older than PostgreSQL %s",
                     "--min-mxid-age", "9.6");
        exit(1);
@@ -528,6 +530,7 @@ vacuum_one_database(ConnParams *cparams,
 
    if (vacopts->parallel_workers >= 0 && PQserverVersion(conn) < 130000)
    {
+       PQfinish(conn);
        pg_log_error("cannot use the \"%s\" option on server versions older than PostgreSQL %s",
                     "--parallel", "13");
        exit(1);