WHERE hosts.name = ? and backups.num = ?
});
$sth->execute($host, $num);
+ die "can't find backup $host:$num" unless $sth->rows;
my ($id) = $sth->fetchrow_array;
$hsn_cache->{"$host $num"} = $id;
return;
}
- print curr_time, " check $host $num";
+ print curr_time, " check $host $num\n";
+
+ my $sth = $dbh->prepare(qq{
+ SELECT count(*)
+ FROM files
+ JOIN shares on shares.id = shareid
+ JOIN hosts on hosts.id = shares.hostid
+ WHERE hosts.name = ? and backupnum = ?
+ });
+ $sth->execute($host, $num);
+ my ($files) = $sth->fetchrow_array;
+
+ if ( $files == 0 ) {
+ warn "EMPTY INCREMENT, cleanup ",dump( @tar_parts );
+ foreach my $path ( @tar_parts ) {
+ my $full = "$Conf{ArchiveDest}/$path";
+ warn "rm $full\n";
+ unlink $full || die "can't remove $full: $!";
+ }
+ return;
+ }
my $md5_path = "$Conf{ArchiveDest}/$host.$num.md5";
- unlink $md5_path if -s $md5_path == 0; # fix empty
+ unlink $md5_path if -e $md5_path && -s $md5_path == 0; # fix empty
my $read_protect = 0;
get_backup_id($host, $num),
);
+ warn "## commit\n";
+ $dbh->commit;
+
+ return;
+
+=for removed
+
@tar_files = sort @tar_files;
print "\n\t",($#tar_files + 1), " tar files";
$dbh->commit;
return $same;
+=cut
}