@@ -31,7 +31,6 @@ typedef struct
3131void
3232pgBackupValidate (pgBackup * backup )
3333{
34- const char * backup_id_string ;
3534 char base_path [MAXPGPATH ];
3635 char path [MAXPGPATH ];
3736 parray * files ;
@@ -40,23 +39,20 @@ pgBackupValidate(pgBackup *backup)
4039 validate_files_args * validate_threads_args [num_threads ];
4140 int i ;
4241
43- /* We need free() this later */
44- backup_id_string = base36enc (backup -> start_time );
45-
4642 if (backup -> status != BACKUP_STATUS_OK &&
4743 backup -> status != BACKUP_STATUS_DONE )
4844 {
4945 elog (INFO , "Backup %s has status %s. Skip validation." ,
50- backup_id_string , status2str (backup -> status ));
46+ base36enc ( backup -> start_time ) , status2str (backup -> status ));
5147 return ;
5248 }
5349
54- elog (INFO , "Validating backup %s" , backup_id_string );
50+ elog (INFO , "Validating backup %s" , base36enc ( backup -> start_time ) );
5551
5652 if (backup -> backup_mode != BACKUP_MODE_FULL &&
5753 backup -> backup_mode != BACKUP_MODE_DIFF_PAGE &&
5854 backup -> backup_mode != BACKUP_MODE_DIFF_PTRACK )
59- elog (INFO , "Invalid backup_mode of backup %s" , backup_id_string );
55+ elog (INFO , "Invalid backup_mode of backup %s" , base36enc ( backup -> start_time ) );
6056
6157 pgBackupGetPath (backup , base_path , lengthof (base_path ), DATABASE_DIR );
6258 pgBackupGetPath (backup , path , lengthof (path ), DATABASE_FILE_LIST );
@@ -97,9 +93,9 @@ pgBackupValidate(pgBackup *backup)
9793 pgBackupWriteBackupControlFile (backup );
9894
9995 if (corrupted )
100- elog (WARNING , "Backup %s data files are corrupted" , backup_id_string );
96+ elog (WARNING , "Backup %s data files are corrupted" , base36enc ( backup -> start_time ) );
10197 else
102- elog (INFO , "Backup %s data files are valid" , backup_id_string );
98+ elog (INFO , "Backup %s data files are valid" , base36enc ( backup -> start_time ) );
10399}
104100
105101/*
@@ -245,6 +241,7 @@ do_validate_all(void)
245241static void
246242do_validate_instance (void )
247243{
244+ char * current_backup_id ;
248245 int i ;
249246 parray * backups ;
250247 pgBackup * current_backup = NULL ;
@@ -301,6 +298,7 @@ do_validate_instance(void)
301298 {
302299 int j ;
303300 corrupted_backup_found = true;
301+ current_backup_id = base36enc_dup (current_backup -> start_time );
304302 for (j = i - 1 ; j >= 0 ; j -- )
305303 {
306304 pgBackup * backup = (pgBackup * ) parray_get (backups , j );
@@ -310,22 +308,15 @@ do_validate_instance(void)
310308 continue ;
311309 else
312310 {
313- char * backup_id ,
314- * current_backup_id ;
315311
316312 backup -> status = BACKUP_STATUS_ORPHAN ;
317313 pgBackupWriteBackupControlFile (backup );
318314
319- backup_id = base36enc_dup (backup -> start_time );
320- current_backup_id = base36enc_dup (current_backup -> start_time );
321-
322315 elog (WARNING , "Backup %s is orphaned because his parent %s is corrupted" ,
323- backup_id , current_backup_id );
324-
325- free (backup_id );
326- free (current_backup_id );
316+ base36enc (backup -> start_time ), current_backup_id );
327317 }
328318 }
319+ free (current_backup_id );
329320 }
330321 }
331322
0 commit comments