aboutsummaryrefslogtreecommitdiff
path: root/src/backend/replication/basebackup.c
diff options
context:
space:
mode:
authorRobert Haas <rhaas@postgresql.org>2020-04-03 20:15:27 -0400
committerRobert Haas <rhaas@postgresql.org>2020-04-03 20:18:47 -0400
commitdb1531cae00941bfe4f6321fdef1e1ef355b6bed (patch)
tree81f9c505167f9348d869653ae6bfb2c8cd0f6843 /src/backend/replication/basebackup.c
parent9f8f881caa0fabdf7ff46cc55a991ffeab39bd92 (diff)
downloadpostgresql-db1531cae00941bfe4f6321fdef1e1ef355b6bed.tar.gz
postgresql-db1531cae00941bfe4f6321fdef1e1ef355b6bed.zip
Be more careful about time_t vs. pg_time_t in basebackup.c.
lapwing is complaining that about a call to pg_gmtime, saying that it "expected 'const pg_time_t *' but argument is of type 'time_t *'". I at first thought that the problem had someting to do with const, but Thomas Munro suggested that it might be just because time_t and pg_time_t are different identifers. lapwing is i686 rather than x86_64, and pg_time_t is always int64, so that seems like a good guess. There is other code that just casts time_t to pg_time_t without any conversion function, so try that approach here. Introduced in commit 0d8c9c1210c44b36ec2efcb223a1dfbe897a3661.
Diffstat (limited to 'src/backend/replication/basebackup.c')
-rw-r--r--src/backend/replication/basebackup.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/backend/replication/basebackup.c b/src/backend/replication/basebackup.c
index 3b18e733cdf..5d94b9c2291 100644
--- a/src/backend/replication/basebackup.c
+++ b/src/backend/replication/basebackup.c
@@ -99,7 +99,8 @@ static void InitializeManifest(manifest_info *manifest,
basebackup_options *opt);
static void AppendStringToManifest(manifest_info *manifest, char *s);
static void AddFileToManifest(manifest_info *manifest, const char *spcoid,
- const char *pathname, size_t size, time_t mtime,
+ const char *pathname, size_t size,
+ pg_time_t mtime,
pg_checksum_context *checksum_ctx);
static void AddWALInfoToManifest(manifest_info *manifest, XLogRecPtr startptr,
TimeLineID starttli, XLogRecPtr endptr,
@@ -1124,7 +1125,7 @@ AppendStringToManifest(manifest_info *manifest, char *s)
*/
static void
AddFileToManifest(manifest_info *manifest, const char *spcoid,
- const char *pathname, size_t size, time_t mtime,
+ const char *pathname, size_t size, pg_time_t mtime,
pg_checksum_context *checksum_ctx)
{
char pathbuf[MAXPGPATH];
@@ -1507,7 +1508,8 @@ sendFileWithContent(const char *filename, const char *content,
}
pg_checksum_update(&checksum_ctx, (uint8 *) content, len);
- AddFileToManifest(manifest, NULL, filename, len, statbuf.st_mtime,
+ AddFileToManifest(manifest, NULL, filename, len,
+ (pg_time_t) statbuf.st_mtime,
&checksum_ctx);
}
@@ -2188,7 +2190,7 @@ sendFile(const char *readfilename, const char *tarfilename,
total_checksum_failures += checksum_failures;
AddFileToManifest(manifest, spcoid, tarfilename, statbuf->st_size,
- statbuf->st_mtime, &checksum_ctx);
+ (pg_time_t) statbuf->st_mtime, &checksum_ctx);
return true;
}