On Tuesday 06 November 2007 20:45, GDS.Marshall wrote:
> On Tue, 6 November, 2007 11:46 am, Kern Sibbald wrote:
> > On Monday 05 November 2007 23:57, GDS.Marshall wrote:
> >> Hello,
> >>
> >> Would someone please confirm this for me.
> >> OS: Linux 2.6.2x
> >> bacula: 2.2.5
> >> patches:
> >> 2.2.5-deamon.patch
> >> 2.2.5-lastwritten.patch
> >> 2.2.5-nextvol.patch
> >> 2.2.5-postgresql-errors.patch
> >> 2.2.5-tray-monitor.patch
> >>
> >> I am looking at has_volume_expired to modify it, but ended up doing some
> >> debugging.  With the exception of the following two lines, have made no
> >> other changes.  I added the following debugging:
> >> line 165 src/dird/next_vol.c added
> >> Dmsg3(100, "MediaId=%d VolJobs=%d FirstWritten=%d\n", mr->MediaId,
> >> mr->VolJobs, mr->FirstWritten);
> >>
> >> line 194 src/dird/next_vol.c added
> >> Dmsg2(150,"has_volume_expired VolUseDuration=%d
> >> FirstWritten=%d\n",mr->VolUseDuration, mr->FirstWritten);
> >>
> >> In one shell I ran bacula-dir with the following
> >> /home/gdsm/src/bacula-2.2.5/src/dird/bacula-dir -f -d 300 -c
> >> /etc/bacula/bacula-dir.conf -u bacula -g bacula
> >>
> >> In another shell I ran bconsole
> >> status dir
> >>
> >>
> >> bacula-dir produced the follwing output
> >> backup-dir: next_vol.c:165-0 MediaId=40 VolJobs=13
> >> FirstWritten=1194231601
> >> backup-dir: next_vol.c:194-0 has_volume_expired VolUseDuration=82800
> >> FirstWritten=0
> >>
> >> I then ran a select
> >> select MediaId,VolJobs,FirstWritten from Media where MediaId=40;
> >> +---------+---------+---------------------+
> >>
> >> | MediaId | VolJobs | FirstWritten        |
> >>
> >> +---------+---------+---------------------+
> >>
> >> |      40 |      13 | 2007-11-05 03:00:01 |
> >>
> >> +---------+---------+---------------------+
> >>
> >> So line 194 of src/dird/next_vol.c should not produce 0 for FirstWritten
> >>
> >> The problem I would like someone to confirm is the FirstWritten.
> >> Line 165 next_vol.c shows FirstWritten=1194231601
> >> Line 166 next_vol.c calls has_volume_expired
> >> Line 194 next_vol.c first line in has_volume_expired shows
> >> FirstWritten=0
> >>
> >> Is this expected?  If I have laboured the point, I apologise, I just
> >> want
> >> to make sure I have explained my findings properly.
> >
> > Yes this is expected because your debug code that you added at line 194
> > is incorrect (has a bug). You didn't actually display FirstWritten, and
> > FirstWritten is not actually zero.
>
> I should have done some more debugging.  But then I would not have learnt
> so much.
>
> Despite believing you, I put separate Dmsg1's and sure enough, each value
> was printed as expected.
>
> I looked at FirstWritten and it is a time_t which is a long int.  That
> said, I changed the %d for a %ld, and that did not work.  I tried a
> multitude of permutations, none of which worked.  That said, I think I
> have "status dir" doing what I set out to do.  (I have the FSFE printed to
> send off).  If tonight's backup at work goes okay (I am using them as a
> guinea pig, I will let you have it for your comments.
>
> > If you cannot figure out the bug in a day or two, ask and I'll explain.
> >

The correct debug statement that you want at line 194 *should* be (I haven't 
actually tried it, which is the acid test):

  Dmsg2(150,"has_volume_expired VolUseDuration=%lld \
FirstWritten=%d\n",mr->VolUseDuration, mr->FirstWritten);

Obviously it shouldn't really be split, but my email wants to wrap it.

Kern

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Bacula-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bacula-devel

Reply via email to