Kern Sibbald wrote: > On Monday 26 March 2007 05:16, Eric Bambach wrote: > >> Hello again list. >> >> Original thread is: [Bacula-users] Unable to Truncate Error Solved! >> >> I have some additional information about my problem. >> >> I am still getting error truncating files. It has to be some weird >> incompatibility with windows 2000 server and Bacula. >> >> -The file permissions say everyone full control. >> -SysInternals Process explorer at the time of the error show that only >> bacula-sd.exe has an open handle for Vol0071 (Or any of the volumes for >> that matter). >> -SysInternals Filemon shows no access besides bacula-sd.exe to that >> volume at the time of the error. >> -I tried both the packged mingw.dll and a different version from the >> MinGW website. >> -I have no antivirus software installed. >> -Winver shows Windows 2000 Version 5.0 (Build 2195: Service Pack 4) >> -I have cygwin installed. Maybe a .dll conflict there? >> -Using 2x"Initio inic1620 S-ATA Controller" to power a dynamic disk >> Raid-5 array of 4x"WDC WD3200JD-00KLB0 SCSI Disk Device" >> -I DO have Legato Networker installed which backs up those files. >> (Off-site). But legato did not have filehandles for Vol0071 (or any >> other in the pool) open at the time. >> >> Any ideas anyone? >> > > If we assume that this is a Windows bug rather than a Bacula bug, I have the > following comments: > - I've seen this kind of thing *many* times on Win32 machines. Most recently > was two days ago when I was cleaning up an older laptop that I was "donating" > to a 3rd world country. I wanted to blow away all my files. I did so by > creating a new account, loging out of my account, then proceeding to delete > my files (after deleting my account). When I got to one particular part of > the system (my profile if I remember right), it would not delete the > directory complaining that I could not delete NTLDR.dat (or some file such as > that). The error message was total nonsense. In the end I succeeded in > deleting my file *only* after rebooting and never logging in on my account. > > What that tells me is that there are conditions in which files are opened, > and > even if the user goes away, the OS still thinks the file is open (or at least > cannot be deleted). > > - You might try rebooting your machine, and in doing so make sure that no > other software runs (by turning it off before rebooting) that could possibly > open or touch the file that Bacula wants to truncate. Then see if Bacula can > do its thing. > > - Ensure that you really have installed Bacula as system administrator of the > local machine (not as a domain administrator or whatever the term is). The > manual explains this for the FD. > > Now, if we assume that this is a Bacula bug (i.e. something is incorrect in > the libraries), it seems to me that this is going to take a bit of work to > resolve. The first step would be either manually in the source code or with > a debugger, trace exactly what code Bacula is executing when it does the > truncate() (actually, I think it does an ftruncate(), which as far as I can > tell is defined as chsize(). > > Once you find where it is getting the error, we can examine the system call > and probably figure out how to fix it. I do note that there is a comment in > the gcc code that indicates that ftruncate() does not work ... > > > > >> This will put a complete halt to using bacula in our >> environment. I am not opposed to debugging/tracing the problem for the >> developers because bacula seems like such an awesome product but I need >> some pointers as I am out of ideas for the moment. >> >> Perhaps the source needs an #IFDEF WIN32 chsize(...) #ELSE truncate(...) >> #ENDIF? >> >> Should we take this to the MinGW development list? >> >> ---------------------Error log------------------------------- >> >> 25-Mar 21:59 moe-dir: No prior Full backup Job record found. >> 25-Mar 21:59 moe-dir: No prior or suitable Full backup found in catalog. >> > Doing FULL backup. > >> 25-Mar 21:59 moe-dir: Start Backup JobId 46, Job=Junior.2007-03-25_21.59.31 >> 25-Mar 21:59 moe-dir: Recycled current volume "Vol0071" >> 25-Mar 21:59 moe-sd: Junior.2007-03-25_21.59.31 Fatal >> > error: ../../stored/label.c:448 Truncate error on device "FileStorage" (E: > \Bacula-Storage): ERR=../../stored/dev.c:1943 Unable to truncate > device "FileStorage" (E:\Bacula-Storage). ERR=Invalid argument > >> 25-Mar 21:59 moe-sd: Marking Volume "Vol0071" in Error in Catalog. >> 25-Mar 21:59 moe-sd: Junior.2007-03-25_21.59.31 Fatal error: Job 46 >> > canceled. > >> 25-Mar 20:59 junior-fd: Junior.2007-03-25_21.59.31 Fatal error: job.c:1665 >> > Bad response to Append Data command. Wanted 3000 OK data > >> , got 3903 Error append data >> >> 25-Mar 21:59 moe-dir: Junior.2007-03-25_21.59.31 Error: Bacula 2.0.3 >> > (06Mar07): 25-Mar-2007 21:59:40 > >> JobId: 46 >> Job: Junior.2007-03-25_21.59.31 >> Backup Level: Full (upgraded from Incremental) >> Client: "junior-fd" i386-pc-linux-gnu,debian,3.1 >> FileSet: "Full Linux Root" 2007-03-22 22:56:17 >> Pool: "DiskPool" (From Job resource) >> Storage: "File" (From Job resource) >> Scheduled time: 25-Mar-2007 21:59:29 >> Start time: 25-Mar-2007 21:59:39 >> End time: 25-Mar-2007 21:59:40 >> Elapsed time: 1 sec >> Priority: 10 >> FD Files Written: 0 >> SD Files Written: 0 >> FD Bytes Written: 0 (0 B) >> SD Bytes Written: 0 (0 B) >> Rate: 0.0 KB/s >> Software Compression: None >> VSS: no >> Encryption: no >> Volume name(s): >> Volume Session Id: 22 >> Volume Session Time: 1174625675 >> Last Volume Bytes: 1 (1 B) >> Non-fatal FD errors: 0 >> SD Errors: 0 >> FD termination status: Error >> SD termination status: Error >> Termination: *** Backup Error *** >> ---------------------Error log------------------------------- >> >> >> ------------------------------------------------------------------------- >> Take Surveys. Earn Cash. Influence the Future of IT >> Join SourceForge.net's Techsay panel and you'll get the chance to share your >> opinions on IT & business topics through brief surveys-and earn cash >> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV >> _______________________________________________ >> Bacula-users mailing list >> Bacula-users@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/bacula-users >> >> Well I've done some testing. No matter what I did I was not able to trigger this using files < 2GB. I set the maximum volume size at 2GB so the files were all about 1.9ish GB. I let it run for many days backing up over 200GB of data and it did not trigger the truncate problem. I purged large jobs which marked dozens of files to be recycled and it had no problem re-using those files. I would guess it created 160 files and recycled at least 100 of them - some more than once-
I then used the label command to create 2 test volumes just over 2gb. I was able to get the error easily in a day. It did recycle them a few times, but eventually it tripped up. I would guess I recycled these two volumes only 5-6 times before it couldnt truncate them. This is bizarre..... any more ideas? Im hoping I have it pegged this time and its not another false alarm. In light of this do you still want the debugging output from those specially compiled daemons? ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ Bacula-users mailing list Bacula-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bacula-users