]> git.sur5r.net Git - bacula/bacula/commitdiff
Add JobErrors to returned SD values
authorKern Sibbald <kern@sibbald.com>
Fri, 6 Mar 2009 20:43:53 +0000 (20:43 +0000)
committerKern Sibbald <kern@sibbald.com>
Fri, 6 Mar 2009 20:43:53 +0000 (20:43 +0000)
git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@8504 91ce42f0-d328-0410-95d8-f526ca767f89

bacula/src/dird/msgchan.c
bacula/src/stored/fd_cmds.c
bacula/src/stored/job.c
bacula/src/stored/mac.c
bacula/src/version.h
bacula/technotes-2.5

index 5c2f1aa11cb1c87106ec69168c75e8c8d5ed8ccc..f9cc3a2113b940e27f808bca7c7fa0b8156c281d 100644 (file)
@@ -64,7 +64,7 @@ static char OK_device[]  = "3000 OK use device device=%s\n";
 /* Storage Daemon requests */
 static char Job_start[]  = "3010 Job %127s start\n";
 static char Job_end[]    =
-   "3099 Job %127s end JobStatus=%d JobFiles=%d JobBytes=%" lld "\n";
+   "3099 Job %127s end JobStatus=%d JobFiles=%d JobBytes=%lld JobErrors=%u\n";
 
 /* Forward referenced functions */
 extern "C" void *msg_thread(void *arg);
@@ -361,9 +361,8 @@ extern "C" void *msg_thread(void *arg)
    BSOCK *sd;
    int JobStatus;
    char Job[MAX_NAME_LENGTH];
-   uint32_t JobFiles;
+   uint32_t JobFiles, JobErrors;
    uint64_t JobBytes;
-   int stat;
 
    pthread_detach(pthread_self());
    set_jcr_in_tsd(jcr);
@@ -379,14 +378,15 @@ extern "C" void *msg_thread(void *arg)
       if (sscanf(sd->msg, Job_start, Job) == 1) {
          continue;
       }
-      if ((stat=sscanf(sd->msg, Job_end, Job, &JobStatus, &JobFiles,
-                 &JobBytes)) == 4) {
+      if (sscanf(sd->msg, Job_end, Job, &JobStatus, &JobFiles,
+                 &JobBytes, &JobErrors) == 5) {
          jcr->SDJobStatus = JobStatus; /* termination status */
          jcr->SDJobFiles = JobFiles;
          jcr->SDJobBytes = JobBytes;
+         jcr->SDErrors = JobErrors;
          break;
       }
-      Dmsg2(400, "end loop stat=%d use=%d\n", stat, jcr->use_count());
+      Dmsg1(400, "end loop use=%d\n", jcr->use_count());
    }
    if (is_bnet_error(sd)) {
       jcr->SDJobStatus = JS_ErrorTerminated;
index 558df83f3a121f889102c96fe7e86a604aa48b14..2c6a5693eeadc1e538e83ba5400a240632e07e2f 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.
@@ -102,7 +102,7 @@ static char ERROR_bootstrap[] = "3904 Error bootstrap\n";
 /* Information sent to the Director */
 static char Job_start[] = "3010 Job %s start\n";
 char Job_end[]   =
-   "3099 Job %s end JobStatus=%d JobFiles=%d JobBytes=%s\n";
+   "3099 Job %s end JobStatus=%d JobFiles=%d JobBytes=%s JobErrors=%u\n";
 
 /*
  * Run a File daemon Job -- File daemon already authorized
@@ -131,7 +131,7 @@ void run_job(JCR *jcr)
    set_jcr_job_status(jcr, JS_Terminated);
    generate_daemon_event(jcr, "JobEnd");
    dir->fsend(Job_end, jcr->Job, jcr->JobStatus, jcr->JobFiles,
-      edit_uint64(jcr->JobBytes, ec1));
+      edit_uint64(jcr->JobBytes, ec1), jcr->JobErrors);
    dir->signal(BNET_EOD);             /* send EOD to Director daemon */
    return;
 }
index c76beb88166f4248582ce387e1614f9a1f0b886e..8b5add3f589f093f66478e39ec508b9dafccc635 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 08a719f35740f88d07ffb008c5d34d0dad139b4a..b7768a811f8cea93735a08a25cb9d796622c2873 100644 (file)
@@ -1,7 +1,7 @@
 /*
    Bacula® - The Network Backup Solution
 
-   Copyright (C) 2006-2008 Free Software Foundation Europe e.V.
+   Copyright (C) 2006-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.
@@ -174,7 +174,7 @@ ok_out:
    }
    generate_daemon_event(jcr, "JobEnd");
    dir->fsend(Job_end, jcr->Job, jcr->JobStatus, jcr->JobFiles,
-      edit_uint64(jcr->JobBytes, ec1));
+      edit_uint64(jcr->JobBytes, ec1), jcr->JobErrors);
    Dmsg4(100, Job_end, jcr->Job, jcr->JobStatus, jcr->JobFiles, ec1); 
        
    dir->signal(BNET_EOD);             /* send EOD to Director daemon */
index 8a77f11df290b3fad4888051aea04e87ca96cabd..8f2a36bd0a12347cf2a34932ba3ec6bcca4d76af 100644 (file)
@@ -3,9 +3,9 @@
  */
 
 #undef  VERSION
-#define VERSION "2.5.40"
-#define BDATE   "18 February 2009"
-#define LSMDATE "18Feb09"
+#define VERSION "2.5.41"
+#define BDATE   "06 March 2009"
+#define LSMDATE "06Mar09"
 
 #define PROG_COPYRIGHT "Copyright (C) %d-2009 Free Software Foundation Europe e.V.\n"
 #define BYEAR "2009"       /* year for copyright messages in progs */
index 173eb38ab2fad718e7ccc9e4f435e92284bc3375..eb3fe34f043be91ad961109991fb45d526bbe788 100644 (file)
@@ -30,7 +30,8 @@ kes  Move src/win32/dll to src/win32/lib, which is much more logical.
 kes  Fix the Win32 build.
 kes  Fix broken casting in src/compat/print.cpp.
 kes  Eliminate jcr Errors and always use jcr JobErrors.  This should
-     ensure that SD and FD errors are correctly reported.
+     ensure that SD and FD errors are correctly reported.  Also add
+     JobErrors to SD returned values. This should fix bug #1242.
 28Feb09
 mvw  Implemented xattr support for Solaris 9 and above and extensible
      attributes for OpenSolaris.