I'm setting up a brand new bacula configuration (running debian wheezy
5.2.6) on new hardware with a powerful LTO-5 autochanger.
As usual, I'm activating data spooling in the sd configuration like
this:
Device {
Name = neo200s-drive
Drive Index = 0
Media Type = LTO-5
ArchiveDevice = /dev/nst0
LabelMedia = yes
RandomAccess = no
AutomaticMount = yes
RemovableMedia = yes
AlwaysOpen = yes
AutoChanger = yes
Maximum Spool Size = 50G
Maximum Block Size = 1032192
Maximum Network Buffer Size = 65536
Spool Directory = /var/spool/bacula
}
(/var/spool/bacula ends up on a 4 drive RAID10 volume).
With 3 concurrent jobs, I observed the that the spool file is at most
12GB per job, far from the max 50GB, I've setup.
Eventually the 3rd job finished, but the 2 remaining jobs were still
spooled with around 12GB:
03-Dec 18:44 backup2.internal-sd JobId 14: Spooling data again ...
03-Dec 18:45 backup2.internal-sd JobId 14: User specified spool size reached.
03-Dec 18:45 backup2.internal-sd JobId 14: Writing spooled data to Volume. Despooling 11,355,276,196 bytes ...
03-Dec 18:50 backup2.internal-sd JobId 14: Despooling elapsed time = 00:02:55, Transfer rate = 64.88 M Bytes/second
And at the same time, for the other job:
03-Dec 18:47 backup2.internal-sd JobId 15: Spooling data again ...
03-Dec 18:48 backup2.internal-sd JobId 15: User specified spool size reached.
03-Dec 18:48 backup2.internal-sd JobId 15: Writing spooled data to Volume. Despooling 12,277,034,372 bytes ...
03-Dec 18:53 backup2.internal-sd JobId 15: Despooling elapsed time = 00:03:30, Transfer rate = 58.46 M Bytes/second
I'm quite surprised to see that 11GB+12GB=23GB of spool is used, when I
declared that the max should be 50GB.
I don't have any limitation of the spool size per job (using the
defaults here).
Does anyone know what rules bacula is using to know when to stop
spooling?
I guess there are some other jobs which consume your spool size. Maximum Spool Size parameter defines maximum for all jobs running on selected Device.