X-Git-Url: http://git.rot13.org/?p=BackupPC.git;a=blobdiff_plain;f=bin%2FBackupPC_ASA_PostArchive_Update;h=0b3eff9b4ec1f2834a26c1b2ebb1071c1daf7c98;hp=445a1712e4a4cec0aa30e22e3cf33702c57380e6;hb=ee72b16012de7b99df222310893aa0470da16ff1;hpb=397087352b124ac10a4b3a8496ce11dbbe5333eb;ds=inline diff --git a/bin/BackupPC_ASA_PostArchive_Update b/bin/BackupPC_ASA_PostArchive_Update index 445a171..0b3eff9 100755 --- a/bin/BackupPC_ASA_PostArchive_Update +++ b/bin/BackupPC_ASA_PostArchive_Update @@ -80,21 +80,22 @@ sub get_backup_id($$) { my $key = "$host $num"; return $hsn_cache->{$key} if ($hsn_cache->{$key}); + # all backup parts will be attached to first share in backups my $sth = $dbh->prepare(qq{ SELECT - backups.id + min(backups.id) FROM backups INNER JOIN shares ON backups.shareID=shares.ID INNER JOIN hosts ON backups.hostID = hosts.ID WHERE hosts.name = ? and backups.num = ? }); $sth->execute($host, $num); - die "can't find backup $host:$num" unless $sth->rows; + die "can't find backup $host:$num" unless $sth->rows == 1; my ($id) = $sth->fetchrow_array; - $hsn_cache->{"$host $num"} = $id; + $hsn_cache->{$key} = $id; - print STDERR "# $host $num == $id\n" if $opt->debug; + print STDERR "# $key == $id\n" if $opt->debug; return $id; }