operator message to fix incosistent state of DVDs
authordpavlin <dpavlin@8392b6e1-25fa-0310-8288-cc32f8e212ea>
Sun, 15 Jan 2006 14:00:14 +0000 (14:00 +0000)
committerdpavlin <dpavlin@8392b6e1-25fa-0310-8288-cc32f8e212ea>
Sun, 15 Jan 2006 14:00:14 +0000 (14:00 +0000)
git-svn-id: svn+ssh://llin/home/dpavlin/private/svn/BackupPC/trunk@287 8392b6e1-25fa-0310-8288-cc32f8e212ea

bin/BackupPC_burnArchiveCLI

index ab5a29f..4880b65 100755 (executable)
@@ -297,6 +297,24 @@ foreach my $arc (@archives_to_burn) {
 
        if ($sth_archive_backup_parts->rows == 0) {
                warn "ERROR: no backup parts found for $dvd_nr. You should re-create that DVD.\n";
+               print "Do you want to delete invalid DVD #$dvd_nr now? [NO/yes]: ";
+               my $ok = <STDIN>;
+               chomp($ok);
+               if (lc($ok) eq 'yes') {
+                       print "Deleting DVD #$dvd_nr from database...\n";
+
+                       $dbh->begin_work;
+
+                       my $sth_delete_dvd = $dbh->prepare( qq{
+                               delete from archive where dvd_nr = ?
+                       } );
+                       $sth_delete_dvd->execute( $dvd_nr );
+                       $dbh->do( qq{
+                               select setval('dvd_nr', (select max(dvd_nr) from archive), true)
+                       } );
+
+                       $dbh->commit;
+               }
        }
 
        my @volumes;