]> git.sur5r.net Git - bacula/bacula/commitdiff
Second half of proposed fix for bug #1227 that does not
authorKern Sibbald <kern@sibbald.com>
Fri, 20 Mar 2009 14:52:17 +0000 (14:52 +0000)
committerKern Sibbald <kern@sibbald.com>
Fri, 20 Mar 2009 14:52:17 +0000 (14:52 +0000)
     mark virtual volumes for unloading.

git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@8561 91ce42f0-d328-0410-95d8-f526ca767f89

bacula/src/stored/ansi_label.c
bacula/src/stored/askdir.c
bacula/src/stored/mount.c
bacula/src/stored/reserve.c
bacula/src/stored/vol_mgr.c
bacula/technotes-2.5

index 6a8fa41829e7cc980c700eab12f30d52b4b86f9f..3c0e7492376ed4263effc7f392022e73da5b4722 100644 (file)
@@ -1,7 +1,7 @@
 /*
    Bacula® - The Network Backup Solution
 
-   Copyright (C) 2005-2007 Free Software Foundation Europe e.V.
+   Copyright (C) 2005-2009 Free Software Foundation Europe e.V.
 
    The main author of Bacula is Kern Sibbald, with contributions from
    many others, a complete list can be found in the file AUTHORS.
@@ -148,6 +148,7 @@ int read_ansi_ibm_label(DCR *dcr)
                }
                *q = 0;
                Dmsg0(100, "Call reserve_volume\n");
+               /* ***FIXME***  why is this reserve_volume() needed???? KES */
                reserve_volume(dcr, dev->VolHdr.VolumeName);
                dev = dcr->dev;            /* may have changed in reserve_volume */
                Dmsg2(100, "Wanted ANSI Vol %s got %6s\n", VolName, dev->VolHdr.VolumeName);
index 3deb5bce4615bbc2b908170f9b978b12eca89f66..00666364120724867a3545476a39bd657b1de2e3 100644 (file)
@@ -1,7 +1,7 @@
 /*
    Bacula® - The Network Backup Solution
 
-   Copyright (C) 2000-2008 Free Software Foundation Europe e.V.
+   Copyright (C) 2000-2009 Free Software Foundation Europe e.V.
 
    The main author of Bacula is Kern Sibbald, with contributions from
    many others, a complete list can be found in the file AUTHORS.
index c18506d865731ba241791a07db1c0ab47c55325e..06d48b36d14fbae78382fbea0608f1b1fbd07825 100644 (file)
@@ -1,7 +1,7 @@
 /*
    Bacula® - The Network Backup Solution
 
-   Copyright (C) 2002-2008 Free Software Foundation Europe e.V.
+   Copyright (C) 2002-2009 Free Software Foundation Europe e.V.
 
    The main author of Bacula is Kern Sibbald, with contributions from
    many others, a complete list can be found in the file AUTHORS.
index 41c3ce07c523841463d4969606960522e147185a..e373e8dcaab4f85fb7777f0504fe86fb55ed71d3 100644 (file)
@@ -1,7 +1,7 @@
 /*
    Bacula® - The Network Backup Solution
 
-   Copyright (C) 2000-2008 Free Software Foundation Europe e.V.
+   Copyright (C) 2000-2009 Free Software Foundation Europe e.V.
 
    The main author of Bacula is Kern Sibbald, with contributions from
    many others, a complete list can be found in the file AUTHORS.
index 95d906ad9fa9c5840b7b40867580936a4c251abe..54b00b81480a6d2b8608b6d03745872d8af2f7e4 100644 (file)
@@ -1,7 +1,7 @@
 /*
    Bacula® - The Network Backup Solution
 
-   Copyright (C) 2000-2008 Free Software Foundation Europe e.V.
+   Copyright (C) 2000-2009 Free Software Foundation Europe e.V.
 
    The main author of Bacula is Kern Sibbald, with contributions from
    many others, a complete list can be found in the file AUTHORS.
@@ -380,9 +380,12 @@ VOLRES *reserve_volume(DCR *dcr, const char *VolumeName)
             goto get_out;
          }
          Dmsg2(dbglvl, "reserve_vol free vol=%s at %p\n", vol->vol_name, vol->vol_name);
-         free_volume(dev);
-         Dmsg0(50, "set_unload\n");
-         dev->set_unload();             /* have to unload current volume */
+         /* If old Volume is still mounted, must unload it */
+         if (strcmp(vol->vol_name, dev->VolHdr.VolumeName) == 0) {
+            Dmsg0(50, "set_unload\n");
+            dev->set_unload();          /* have to unload current volume */
+         }
+         free_volume(dev);              /* Release old volume entry */
          debug_list_volumes("reserve_vol free");
       }
    }
index e4c449a8ca951cc0cac151de43e5cdd26f2f20dd..9fd223c1653bd748b1e0c70a76200d554582f830 100644 (file)
@@ -23,20 +23,20 @@ bpipe fd plugin
 Exchange plugin
 
 
--New features to be documented:
--Update src/plugins/README
--command separator in console (!$%&'()*+,-/:;<>?[]^`{|}~)
--examples/database/dbcheck.sql
--enhancement to wait command: wait mount  ...
--dbport in dbcheck
--filepattern (restore with regex in bsr)
--Allow Mixed Priorities  Kjetil Torgrim Homme <kjetilho@linpro.no> 30Jun08
--Eliminated license problems with OpenSSL.
+New features to be documented:
+- Update src/plugins/README
+- command separator in console (!$%&'()*+,-/:;<>?[]^`{|}~)
+- examples/database/dbcheck.sql
+- enhancement to wait command: wait mount  ...
+- dbport in dbcheck
+- filepattern (restore with regex in bsr)
+- Allow Mixed Priorities  Kjetil Torgrim Homme <kjetilho@linpro.no> 30Jun08
+- Eliminated license problems with OpenSSL.
 - The exchange plugin truncates the exchange logs as soon as it has
-sent the data to the sd.  If the sd is spooling and something
-goes wrong and the data doesn't make it to the backup medium then
-the logs are lost, which could be a problem under some
-restore scenarios.
+  sent the data to the sd.  If the sd is spooling and something
+  goes wrong and the data doesn't make it to the backup medium then
+  the logs are lost, which could be a problem under some
+  restore scenarios.
 - Regex filtered bsrs Kjetil Torgrim Homme <kjetilho@linpro.no> 15Aug08
 
 Code to be completed before 3.0.0 is released:
@@ -50,6 +50,8 @@ Code to be completed before 3.0.0 is released:
 
 General:
 20Mar09
+kes  Second half of proposed fix for bug #1227 that does not
+     mark virtual volumes for unloading.
 kes  Proposed fix for bug #1227 Job and labeling new tape.
 
 Beta release 2.5.42-b2