On 3/21/12 8:02 AM, Stephen Thompson wrote: > > > Thanks for the response. > I am referring to this page in the documentation: > http://www.bacula.org/en/dev-manual/main/main/Data_Spooling.html > > I believe the above page is inline with what you say below. > > I am running 5.2.6 on Centos 5.8 with a tape library with 2 drives. > > When I have launched jobs together, meaning, when I launch a set of jobs > in quick successtion so that they all vie for tape device resources, and > as those are assigned, they begin spooling, I have observed the > behaviour described in the web page above and your email below. > > The case where I have not is this: > > Day 1, launch set of jobs which occupy all drives, and use Data > Spooling. These run as expected and smaller/faster jobs complete > sooner. A few jobs (say two large slow ones to emphasize the situation) > remain spooling for longer, but eventually reach their despooling phase, > at which point they both occupy one of my two tape drives. This > situations proceeds into Day 2. > > Day 2, launch a different set of jobs, and use Data Spooling. The jobs > from the previous day are still despooling, and occupying all available > drives. And there is plenty of spool space available. All jobs in this > example have the same priority, level, use the same pool, to which the > tapes in the occupied drives belong, and there are no concurrencies > being exceeded. > > What I see for these new jobs, is that they do NOT begin to spool. > There status in bconsole is: > > (for Director) > 12345 Full JOBNAME.0000-00-00_00.00.00_00 is running > > (for Storage Daemon) > spooling=0 despooling=0 despool_wait=0w > [I don't seem to have captured what they say in the device field.] > > They remain in this state until the jobs from the previous day finish > despooling and free up their drives, at which point the new jobs begin > spooling. > > After doing some reading, I wondered if it's not possible that they are > stuck in the state before despooling, which I believe is checking to seew
sorry, correction: "in the state before spooling" > that there will be a tape device and volume available to them when the > are ready to despool. > > It looks from my view, that once a job is started it can spool to it's > heart's content, even if all drives are occupied by other jobs that are > despooling, but that jobs cannot 'start' if all drives are occupied by > other jobs that are despooling. > > I can gather whatever evidence you need on this or open a bug if that's > appropriate. > > This is causing some major grief, as we were getting better results with > tiny spool files. I think in that situation, the problem I describe > still exists, but chances are there will be a moment when all existing > jobs are in a spooling, rather than despooling, state, at which point > new jobs can jump in, get a drive assigned, and start spooling. > However, in that case, we can't of course make use of the benefits of > having spool files sizes as large or larger than our jobs. > > thanks, > Stephen > > > > > > > > > On 3/21/12 2:27 AM, Kern Sibbald wrote: >> Hello, >> >> Can you give me the exact location of that text in the document and >> what Bacula version you are referring to? >> >> The facts as we know them, including the design of the software, and what >> we have seen from testing are: >> >> - When a Job begins despooling, that Job and only that Job stops >> spooling and begins despooling. >> - When the Job is done despooling, it will begin spooling again. >> - While any Job is despooling, all other Jobs will continue spooling >> providing there is sufficient spooling space. >> - If Jobs run out of spooling space, they start despooling, but only >> one job at a time despools to any given volume, so they may wait. >> - Once the spooling space fills, if you are writing to several Volumes, >> you can get into a sort of spooling thrashing situation where various jobs >> finish despooling and others start using the space liberated. Thus it >> is important not to run out of spooling space. >> - Note, when I speak about running out of spooling space, in the terms >> I am using those words, it can never happen to a single job. It happens >> only when running multiple jobs to multiple devices. >> >> We have a project planned for Bacula Enterprise where a Job is blocked >> because it is despooling will be able to continue spooling providing there >> is sufficient space. But this is an Enterprise feature, and unless someone >> from the community implements it, it will only be in the Enterprise >> version. >> In fact, we have a series of plans for adding high end Enterprise features >> to the Storage daemon. Most of them should be completed by the end of >> the year (hopefully before). >> >> Best regards, >> Kern >> >> On 03/20/2012 10:46 PM, Stephen Thompson wrote: >>> >>> Hello, >>> >>> I was wondering if anyone could confirm what I've noticed on my own >>> instance of bacula, which seems contrary to the Bacula manual. >>> >>> From DataSpooling section: >>>> If you are running multiple simultaneous jobs, Bacula will continue >>>> spooling other jobs while one is despooling to tape, provided there >>>> is sufficient spool file space. >>>> This seems to be true, only if the jobs in question were launched at the >>>> same time/concurrently. New jobs launched while a job is despooling, >>>> are launched into a "running" state, but they do not begin to spool >>>> until the existing job(s) finish despooling. >>> This is very sad, because I just came into a windfall of spool space and >>> I was hoping to run jobs back to back, such that while one set of jobs >>> were despooling, I could have the next set spooling, and so on. >>> Note, all jobs use the same Pool and have the same priority. >>> >>> I noticed this because I've increased the spool file size to the size of >>> my largest job. Now, rather than before (with smaller spool file sizes) >>> when the new jobs had a chance to start spooling while the existing jobs >>> were in a spooling phase, the new jobs cannot being spooling apparently >>> because the existing jobs stay in a despooling phase, which can be for >>> quite some time. >>> >>> I see an old bug 0001231 with a similar issue, which in the history it >>> is pointed out that it may not be that new jobs can't spool while >>> existing jobs despool, but that the new jobs cannot verify that they >>> will have tape access, which is a step before spooling begins. >>> >>> I wonder if this is simply the state of affairs and if so, are there are >>> any plans to improve upon this 'inefficiency'. >>> >>> thanks! >>> Stephen > -- Stephen Thompson Berkeley Seismological Laboratory step...@seismo.berkeley.edu 215 McCone Hall # 4760 404.538.7077 (phone) University of California, Berkeley 510.643.5811 (fax) Berkeley, CA 94720-4760 ------------------------------------------------------------------------------ This SF email is sponsosred by: Try Windows Azure free for 90 days Click Here http://p.sf.net/sfu/sfd2d-msazure _______________________________________________ Bacula-devel mailing list Bacula-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bacula-devel