]> git.sur5r.net Git - bacula/bacula/commitdiff
02Aug05
authorKern Sibbald <kern@sibbald.com>
Tue, 2 Aug 2005 16:09:51 +0000 (16:09 +0000)
committerKern Sibbald <kern@sibbald.com>
Tue, 2 Aug 2005 16:09:51 +0000 (16:09 +0000)
- Correct PostgreSQL database scripts as suggested by a user.
- Add additional info to FATAL message generated when a device
  is busy writing to another volume.
- Suppress an inappropriate NULL Volume name message after a cancel.
- Correct a warning message in reserve.c

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

bacula/ReleaseNotes
bacula/kernstodo
bacula/kes-1.37
bacula/projects
bacula/src/cats/drop_postgresql_tables.in
bacula/src/cats/make_postgresql_tables.in
bacula/src/stored/acquire.c
bacula/src/stored/append.c
bacula/src/stored/reserve.c

index 04086a70aabcdb588a8ada656ed848341ff9ce6f..e9fdca9c10d6ed0dece433682df274f23e0ec151 100644 (file)
@@ -33,7 +33,7 @@ Major Changes:
   records have been removed from the catalog.
 - Restore of a directory (non-recursive, i.e. only one level).
 - Support for TLS (ssl) between all the daemon connections thanks
-  to Landon Fuller.
+  to Landon Fuller. This is mostly untested.
 - Any Volume in the Pool named Scratch may be reassigned to any
   other Pool when a new Volume is needed.
 - You may clone a Job and thus write (almost) the same data
@@ -159,7 +159,8 @@ Items to note!!!
 - When linking with --with-python, there are a few warnings that
   can be ignored.
 - You must either create a new catalog database or upgrade your
-  old database (the PostgreSQL upgrade scripts not yet tested).
+  old database.
+- The TLS code is for the most part untested.
 - You must add --with-openssl to the configure command line if
   you want TLS communications encryption support.
 - If you use an Autochanger, you *must* update your SD conf file
index 048a683ae2678958d61af48257b2dc851230483f..dce48aaf18817870da198a7bec64dc2a1105663f 100644 (file)
@@ -9,6 +9,8 @@ Version 1.37                Kern (see below)
 
 Final items for 1.37 before release:
 1. Fix bugs
+- Tape xxx in drive 0, requested in drive 1
+- Multi-drive changer seems to only use drive 0
 -  --without-openssl breaks at least on Solaris.
 9. Run the regression scripts on Solaris and FreeBSD
 -  Figure out how to package gui, and rescue programs.
@@ -57,6 +59,10 @@ Document:
 =======
 
 For 1.39:
+- Email to the user when the tape is about to need changing x
+  days before it needs changing.
+- Command to show next tape that will be used for a job even
+  if the job is not scheduled.
 --- create_file.c.orig  Fri Jul  8 12:13:05 2005
 +++ create_file.c       Fri Jul  8 12:13:07 2005
 @@ -195,6 +195,8 @@
index e2020f5b61d26bf5f96191932ab979420ee9d10f..aae0dcd0077a8504f5336563b1a531286812a9a7 100644 (file)
@@ -4,6 +4,12 @@
 General:
 
 Changes to 1.37.32:
+02Aug05
+- Correct PostgreSQL database scripts as suggested by a user.
+- Add additional info to FATAL message generated when a device
+  is busy writing to another volume.
+- Suppress an inappropriate NULL Volume name message after a cancel.
+- Correct a warning message in reserve.c
 29Jul05
 - Apply user's patch to make mutiple modifiers for times
   work correctly.
index 956569fd64e74b7ee2e05fffdae0df98cca4d5b3..5b4fb7cef5ef3d4211b6c0aa7c5d568e8ec59375 100644 (file)
@@ -24,7 +24,7 @@ Item 1:   Implement Base jobs.
           pulled in where necessary.
 
   Why:    This is something none of the competition does, as far as
-          we know (except BackupPC, which is a Perl program that
+          we know (except perhpas BackupPC, which is a Perl program that
           saves to disk only).  It is big win for the user, it
           makes Bacula stand out as offering a unique
           optimization that immediately saves time and money.
index dcb7d56ba60d75cd0c49deda7f68960c38c483b5..7ef5ad9d43bcfaf3a0d117ad0875cfca2a854d7d 100644 (file)
@@ -19,7 +19,7 @@ drop table filename;
 drop table counters;
 drop table version;
 drop table CDImages;
-drop table Devices;
+drop table Device;
 drop table Storage;
 drop table MediaType;
 drop table Status;
index 4c6e9cf0d3463c5e1cdb26557c5b2b538e059596..be0e9f5840ae962d9990a55f5fd88204fb1c38f9 100644 (file)
@@ -167,7 +167,7 @@ CREATE TABLE Device (
    DeviceId SERIAL,
    Name TEXT NOT NULL,
    MediaTypeId INTEGER NOT NULL,
-   StorageId INTEGER UNSIGNED,
+   StorageId INTEGER NOT NULL,
    DevMounts INTEGER NOT NULL DEFAULT 0,
    DevReadBytes BIGINT NOT NULL DEFAULT 0,
    DevWriteBytes BIGINT NOT NULL DEFAULT 0,
@@ -176,7 +176,7 @@ CREATE TABLE Device (
    DevReadTime BIGINT NOT NULL DEFAULT 0,
    DevWriteTime BIGINT NOT NULL DEFAULT 0,
    DevReadTimeSinceCleaning BIGINT NOT NULL DEFAULT 0,
-   DevWriteTimeSinceCleaning BIGINT UNSIGNED DEFAULT 0,
+   DevWriteTimeSinceCleaning BIGINT NOT NULL DEFAULT 0,
    CleaningDate TIMESTAMP WITHOUT TIME ZONE,
    CleaningPeriod BIGINT NOT NULL DEFAULT 0,
    PRIMARY KEY(DeviceId)
index 6776086724041192dafdcff5e8204414a16ccec1..e9daa80c1d243c3e57ae0182301917d306bd2fd5 100644 (file)
@@ -356,7 +356,8 @@ DCR *acquire_device_for_append(DCR *dcr)
             free_unused_volume(dcr);
          }
          if (dev->num_writers != 0 || dev->reserved_device) {
-            Jmsg(jcr, M_FATAL, 0, _("Device %s is busy writing on another Volume.\n"), dev->print_name());
+            Jmsg(jcr, M_FATAL, 0, _("Wanted Volume \"%s\", but device %s is busy writing on \"%s\" .\n"), 
+                 dcr->VolumeName, dev->print_name(), dev->VolHdr.VolumeName);
             goto get_out;
          }
          /* Wrong tape mounted, release it, then fall through to get correct one */
index 2415c9c02a28f2eb08029748575eec436804a54a..b6ee3f1ce1a4b0ddc1b16b44e6a5c046a21579cf 100644 (file)
@@ -245,7 +245,7 @@ bool do_append_data(JCR *jcr)
    set_jcr_job_status(jcr, ok?JS_Terminated:JS_ErrorTerminated);
 
    Dmsg1(200, "Write session label JobStatus=%d\n", jcr->JobStatus);
-   if (dev->VolCatInfo.VolCatName[0] == 0) {
+   if ((!ok || job_canceled(jcr)) && dev->VolCatInfo.VolCatName[0] == 0) {
       Pmsg0(000, "NULL Volume name. This shouldn't happen!!!\n");
    }
 
index ebcb77c038f8a0cbd0dbeca2076b79c5a19aee0e..4dc22f1c4c85bae4e859a5cccc1504db43bec21b 100644 (file)
@@ -694,7 +694,8 @@ static int can_reserve_drive(DCR *dcr, bool PreferMountedVols)
          return 1;
       } else {
          /* Drive not suitable for us */
-         Jmsg(jcr, M_WARNING, 0, _("Device %s is busy writing on another Volume.\n"), dev->print_name());
+         Jmsg(jcr, M_WARNING, 0, _("Wanted Pool \"%s\", but device %s is using Pool \"%s\" .\n"), 
+                 dcr->pool_name, dev->print_name(), dev->pool_name);
          return 0;                    /* wait */
       }
    } else {