v34-0004-Free-malloc-d-memory-if-no-variables-could-be-re.patch
application/octet-stream
Filename: v34-0004-Free-malloc-d-memory-if-no-variables-could-be-re.patch
Type: application/octet-stream
Part: 3
Message:
RE: speed up a logical replica setup
Patch
Same data as JSON:
GET /api/v1/attachments/:id/patch
the parsed metadata as JSON — format, series position, per-file stats; never the diff bytes.
API reference →
Format: format-patch
Series: patch v34-0004
Subject: Free malloc'd memory if no variables could be referred the region
| File | + | − |
|---|---|---|
| src/bin/pg_basebackup/pg_createsubscriber.c | 6 | 0 |
From 8f77e86f29f5bdc0365a83abced96b2ab746747e Mon Sep 17 00:00:00 2001
From: Hayato Kuroda <kuroda.hayato@fujitsu.com>
Date: Mon, 25 Mar 2024 07:38:06 +0000
Subject: [PATCH v34 4/4] Free malloc'd memory if no variables could be
referred the region
---
src/bin/pg_basebackup/pg_createsubscriber.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/src/bin/pg_basebackup/pg_createsubscriber.c b/src/bin/pg_basebackup/pg_createsubscriber.c
index 1139c15896..392eec11b0 100644
--- a/src/bin/pg_basebackup/pg_createsubscriber.c
+++ b/src/bin/pg_basebackup/pg_createsubscriber.c
@@ -656,6 +656,7 @@ modify_subscriber_sysid(const struct CreateSubscriberOptions *opt)
pg_fatal("subscriber failed to change system identifier: exit code: %d", rc);
}
+ pg_free(cmd_str);
pg_free(cf);
}
@@ -762,6 +763,7 @@ setup_publisher(struct LogicalRepInfo *dbinfo)
exit(1);
disconnect_database(conn, false);
+ pg_free(genname);
}
return lsn;
@@ -910,6 +912,7 @@ check_publisher(const struct LogicalRepInfo *dbinfo)
pg_log_info("primary has replication slot \"%s\"",
primary_slot_name);
+ destroyPQExpBuffer(str);
PQclear(res);
}
@@ -939,6 +942,7 @@ check_publisher(const struct LogicalRepInfo *dbinfo)
failed = true;
}
+ pg_free(wal_level);
return failed;
}
@@ -1135,6 +1139,7 @@ setup_recovery(const struct LogicalRepInfo *dbinfo, const char *datadir, const c
disconnect_database(conn, false);
pg_log_debug("recovery parameters:\n%s", recoveryconfcontents->data);
+ destroyPQExpBuffer(recoveryconfcontents);
}
/*
@@ -1330,6 +1335,7 @@ stop_standby_server(const char *datadir)
pg_ctl_status(pg_ctl_cmd, rc);
standby_running = false;
pg_log_info("server was stopped");
+ pg_free(pg_ctl_cmd);
}
/*
--
2.43.0