]> git.sur5r.net Git - bacula/bacula/commitdiff
ebl Add volstats patch
authorEric Bollengier <eric@eb.homelinux.org>
Tue, 8 Apr 2008 18:51:56 +0000 (18:51 +0000)
committerEric Bollengier <eric@eb.homelinux.org>
Tue, 8 Apr 2008 18:51:56 +0000 (18:51 +0000)
git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@6759 91ce42f0-d328-0410-95d8-f526ca767f89

bacula/patches/2.2.8-volstats.patch [new file with mode: 0644]

diff --git a/bacula/patches/2.2.8-volstats.patch b/bacula/patches/2.2.8-volstats.patch
new file mode 100644 (file)
index 0000000..3982849
--- /dev/null
@@ -0,0 +1,73 @@
+Index: src/stored/askdir.c
+===================================================================
+--- src/stored/askdir.c        (rĂ©vision 6743)
++++ src/stored/askdir.c        (copie de travail)
+@@ -56,7 +56,7 @@
+    " VolBlocks=%lu VolBytes=%lld VolMounts=%lu VolErrors=%lu VolWrites=%lu"
+    " MaxVolBytes=%lld VolCapacityBytes=%lld VolStatus=%20s"
+    " Slot=%ld MaxVolJobs=%lu MaxVolFiles=%lu InChanger=%ld"
+-   " VolReadTime=%lld VolWriteTime=%lld EndFile=%lu EndBlock=%lu"
++   " VolReadTime=%s VolWriteTime=%s EndFile=%lu EndBlock=%lu"
+    " VolParts=%lu LabelType=%ld MediaId=%lld\n";
+@@ -167,6 +167,7 @@
+  */
+ static bool do_get_volume_info(DCR *dcr)
+ {
++    char ed_vrt[50], ed_vwt[50];
+     JCR *jcr = dcr->jcr;
+     BSOCK *dir = jcr->dir_bsock;
+     VOLUME_CAT_INFO vol;
+@@ -187,7 +188,7 @@
+                &vol.VolCatWrites, &vol.VolCatMaxBytes,
+                &vol.VolCatCapacityBytes, vol.VolCatStatus,
+                &vol.Slot, &vol.VolCatMaxJobs, &vol.VolCatMaxFiles,
+-               &InChanger, &vol.VolReadTime, &vol.VolWriteTime,
++               &InChanger, ed_vrt, ed_vwt,
+                &vol.EndFile, &vol.EndBlock, &vol.VolCatParts,
+                &vol.LabelType, &vol.VolMediaId);
+     if (n != 22) {
+@@ -196,6 +197,8 @@
+        Mmsg(jcr->errmsg, _("Error getting Volume info: %s"), dir->msg);
+        return false;
+     }
++    vol.VolReadTime = str_to_int64(ed_vrt);
++    vol.VolWriteTime = str_to_int64(ed_vwt);
+     vol.InChanger = InChanger;        /* bool in structure */
+     unbash_spaces(vol.VolCatName);
+     bstrncpy(dcr->VolumeName, vol.VolCatName, sizeof(dcr->VolumeName));
+Index: src/dird/catreq.c
+===================================================================
+--- src/dird/catreq.c  (rĂ©vision 6743)
++++ src/dird/catreq.c  (copie de travail)
+@@ -56,7 +56,7 @@
+ static char Update_media[] = "CatReq Job=%127s UpdateMedia VolName=%s"
+    " VolJobs=%u VolFiles=%u VolBlocks=%u VolBytes=%" lld " VolMounts=%u"
+    " VolErrors=%u VolWrites=%u MaxVolBytes=%" lld " EndTime=%d VolStatus=%10s"
+-   " Slot=%d relabel=%d InChanger=%d VolReadTime=%" lld " VolWriteTime=%" lld
++   " Slot=%d relabel=%d InChanger=%d VolReadTime=%s VolWriteTime=%s"
+    " VolFirstWritten=%" lld " VolParts=%u\n";
+ static char Create_job_media[] = "CatReq Job=%127s CreateJobMedia "
+@@ -103,6 +103,7 @@
+ void catalog_request(JCR *jcr, BSOCK *bs)
+ {
++   char ed_vrt[50], ed_vwt[50];
+    MEDIA_DBR mr, sdmr;
+    JOBMEDIA_DBR jm;
+    char Job[MAX_NAME_LENGTH];
+@@ -218,8 +219,11 @@
+       &sdmr.VolJobs, &sdmr.VolFiles, &sdmr.VolBlocks, &sdmr.VolBytes,
+       &sdmr.VolMounts, &sdmr.VolErrors, &sdmr.VolWrites, &sdmr.MaxVolBytes,
+       &sdmr.LastWritten, &sdmr.VolStatus, &sdmr.Slot, &label, &sdmr.InChanger,
+-      &sdmr.VolReadTime, &sdmr.VolWriteTime, &VolFirstWritten,
++      ed_vrt, ed_vwt, &VolFirstWritten,
+       &sdmr.VolParts) == 19) {
++      
++      sdmr.VolReadTime = str_to_int64(ed_vrt);
++      sdmr.VolWriteTime = str_to_int64(ed_vwt);
+       db_lock(jcr->db);
+       Dmsg3(400, "Update media %s oldStat=%s newStat=%s\n", sdmr.VolumeName,