Minor code cleanup for perform_base_backup().
authorRobert Haas <rhaas@postgresql.org>
Wed, 17 Jun 2020 15:05:42 +0000 (11:05 -0400)
committerRobert Haas <rhaas@postgresql.org>
Wed, 17 Jun 2020 15:05:42 +0000 (11:05 -0400)
Merge two calls to sendDir() that are exactly the same except for
the fifth argument. Adjust comments to match.

Also, don't bother checking whether tblspc_map_file is NULL. We
initialize it in all cases, so it can't be.

Patch by me, reviewed by Amit Kapila and Kyotaro Horiguchi.

Discussion: http://postgr.es/m/CA+TgmoYq+59SJ2zBbP891ngWPA9fymOqntqYcweSDYXS2a620A@mail.gmail.com

src/backend/replication/basebackup.c

index 62633e7ddcd59edfd80ca6b5c390d48866e37565..efcf1e6eb56a8530fee45ddf2659429b8a08ba21 100644 (file)
@@ -269,7 +269,7 @@ perform_base_backup(basebackup_options *opt)
        XLogRecPtr      endptr;
        TimeLineID      endtli;
        StringInfo      labelfile;
-       StringInfo      tblspc_map_file = NULL;
+       StringInfo      tblspc_map_file;
        backup_manifest_info manifest;
        int                     datadirpathlen;
        List       *tablespaces = NIL;
@@ -424,25 +424,23 @@ perform_base_backup(basebackup_options *opt)
                        if (ti->path == NULL)
                        {
                                struct stat statbuf;
+                               bool    sendtblspclinks = true;
 
                                /* In the main tar, include the backup_label first... */
                                sendFileWithContent(BACKUP_LABEL_FILE, labelfile->data,
                                                                        &manifest);
 
-                               /*
-                                * Send tablespace_map file if required and then the bulk of
-                                * the files.
-                                */
-                               if (tblspc_map_file && opt->sendtblspcmapfile)
+                               /* Then the tablespace_map file, if required... */
+                               if (opt->sendtblspcmapfile)
                                {
                                        sendFileWithContent(TABLESPACE_MAP, tblspc_map_file->data,
                                                                                &manifest);
-                                       sendDir(".", 1, false, tablespaces, false,
-                                                       &manifest, NULL);
+                                       sendtblspclinks = false;
                                }
-                               else
-                                       sendDir(".", 1, false, tablespaces, true,
-                                                       &manifest, NULL);
+
+                               /* Then the bulk of the files... */
+                               sendDir(".", 1, false, tablespaces, sendtblspclinks,
+                                               &manifest, NULL);
 
                                /* ... and pg_control after everything else. */
                                if (lstat(XLOG_CONTROL_FILE, &statbuf) != 0)