--- trunk/bin/BackupPC_tarIncCreate 2005/12/12 13:41:08 253 +++ trunk/bin/BackupPC_tarIncCreate 2005/12/12 21:11:17 261 @@ -199,7 +199,6 @@ # my $max_file_size = $Conf{'MaxArchiveFileSize'} || die "problem with MaxArchiveFileSize parametar"; -$max_file_size *= 1024; my $tar_dir = $Conf{InstallDir}.'/'.$Conf{GzipTempDir}; die "problem with $tar_dir, check GzipTempDir in configuration\n" unless (-d $tar_dir && -w $tar_dir); @@ -223,6 +222,15 @@ my ($backup_id) = $sth->fetchrow_array; $sth->finish; + +# delete exising backup_parts +my $sth_delete_backup_parts = $dbh->prepare(qq{ + delete from backup_parts + where backup_id = ? +}); +$sth_delete_backup_parts->execute($backup_id); + + print STDERR "backup_id: $backup_id working dir: $tar_dir, max uncompressed size $max_file_size bytes, tar $tar_file\n" if ($opts{d}); if (-e $tar_path_final) { @@ -244,7 +252,7 @@ if ($fh) { return if ($current_tar_size == 0); - print STDERR " $part" if ($opts{v}); + print STDERR " $part"; # # Finish with two null 512 byte headers, @@ -272,7 +280,6 @@ $items_in_part, ); - #$total_increment_size += int( ( $size + 1023 ) / 1024 ) * 1024; $total_increment_size += $size; if ($arg->{close}) { @@ -284,13 +291,19 @@ } if ($part == 1) { - print STDERR " single"; + print STDERR " single" if ($opts{v}); move("${tar_path}/1.tar.gz", "${tar_path_final}.tar.gz"); move("${tar_path}/1.md5", "${tar_path_final}.md5"); rmtree $tar_path or die "can't remove temporary dir $tar_path: $!"; } else { - print STDERR " [last]"; + print STDERR " [last]" if ($opts{v}); move("${tar_path}", "${tar_path_final}"); + + # if this archive was single part, remove it + foreach my $suffix (qw/.tar.gz .md5/) { + my $path = $tar_path_final . $suffix; + unlink $path if (-e $path); + } } $sth_inc_size->execute(