Re: Volume name: conflicting variable expansion after upgrade to bacula 13

Brian Candler <[email protected]>
Newsgroups gmane.comp.bacula.user
Message-ID <[email protected]>
On 28/01/2025 19:48, Martin Simmons wrote:
> Actually, I think job 92925 runs first (according to the timestamps in the
> logs, which are not in order for some reason) and creates the volume using
> FileStorage0.  Then, for some reason, the SD refuses to use FileStorage0 for
> job 92925, which makes it select FileStorage1 instead and get into the loop
> trying to create the volume again.  When job 92926 runs, it selects
> FileStorage0 and uses the newly created volume (because it is a volume with no
> jobs at that point).

That's helpful analysis, thank you.  I would have thought the volume 
would be locked for use of the first job, but if it unlocks it and then 
it gets taken over by some other job, that makes sense.

This is a configuration I inherited, and it differs somewhat from the 
Ubuntu samples; the director has two "Storage" blocks, FileStorage0 and 
FileStorage1, whereas the Ubuntu sample configs instead have two 
"Autochanger" blocks, FileChgr1 and FileChgr2. But in both cases, they 
point at the same storage daemon address/port, and have different media 
types and devices.

Hmm... I notice that in the production configuration of bacula-sd.conf, 
the "Device" resources do not define "Maximum Concurrent Jobs", whereas 
the Ubuntu samples do. The docs don't say what the default is here 
(whereas it's 20 for Maximum Concurrent Jobs under the "Storage" 
resource). I wonder??


AFAICS, the "not in SD Device resources or no matching Media Type or is 
disabled" message is only invoked at two places in the source:

% grep -1R NO_device .
./src/stored/reserve.c-static char OK_device[] = "3000 OK use device 
device=%s\n";
./src/stored/reserve.c:static char NO_device[] = "3924 Device \"%s\" not 
in SD Device"
./src/stored/reserve.c-     " resources or no matching Media Type or is 
disabled.\n";
--
./src/stored/reserve.c-          */
./src/stored/reserve.c:         dir->fsend(NO_device, dev_name.c_str());
./src/stored/reserve.c-         Dmsg1(dbglvl, ">dird: %s", dir->msg);
--
./src/stored/job.c-      pm_strcpy(jcr->errmsg, dir->msg);
./src/stored/job.c:      dir->fsend(NO_device, dev_name.c_str());
./src/stored/job.c-      Dmsg1(100, ">dird: %s\n", dir->msg);


It has only started appearing since the Bacula 13 upgrade, and not 
particularly often:

# grep "didn't accept Device" /var/log/bacula/bacula.log{,.1}
/var/log/bacula/bacula.log:23-Jan 22:30 store.nsrc.org-dir JobId 92842: 
Storage daemon "FileStorage0" didn't accept Device "FileDev0" because: 
3924 Device "FileDev0" not in SD Device resources or no matching Media 
Type or is disabled.
/var/log/bacula/bacula.log:23-Jan 22:32 store.nsrc.org-dir JobId 92849: 
Storage daemon "FileStorage0" didn't accept Device "FileDev0" because: 
3924 Device "FileDev0" not in SD Device resources or no matching Media 
Type or is disabled.
/var/log/bacula/bacula.log:24-Jan 00:01 store.nsrc.org-dir JobId 92854: 
Storage daemon "FileStorage0" didn't accept Device "FileDev0" because: 
3924 Device "FileDev0" not in SD Device resources or no matching Media 
Type or is disabled.
/var/log/bacula/bacula.log:25-Jan 21:00 store.nsrc.org-dir JobId 92920: 
Storage daemon "FileStorage0" didn't accept Device "FileDev0" because: 
3924 Device "FileDev0" not in SD Device resources or no matching Media 
Type or is disabled.
/var/log/bacula/bacula.log:26-Jan 02:04 store.nsrc.org-dir JobId 92925: 
Storage daemon "FileStorage0" didn't accept Device "FileDev0" because: 
3924 Device "FileDev0" not in SD Device resources or no matching Media 
Type or is disabled.
/var/log/bacula/bacula.log:27-Jan 22:30 store.nsrc.org-dir JobId 92964: 
Storage daemon "FileStorage0" didn't accept Device "FileDev0" because: 
3924 Device "FileDev0" not in SD Device resources or no matching Media 
Type or is disabled.
/var/log/bacula/bacula.log:27-Jan 22:32 store.nsrc.org-dir JobId 92969: 
Storage daemon "FileStorage0" didn't accept Device "FileDev0" because: 
3924 Device "FileDev0" not in SD Device resources or no matching Media 
Type or is disabled.
/var/log/bacula/bacula.log:27-Jan 22:34 store.nsrc.org-dir JobId 92971: 
Storage daemon "FileStorage0" didn't accept Device "FileDev0" because: 
3924 Device "FileDev0" not in SD Device resources or no matching Media 
Type or is disabled.
/var/log/bacula/bacula.log:28-Jan 00:02 store.nsrc.org-dir JobId 92977: 
Storage daemon "FileStorage0" didn't accept Device "FileDev0" because: 
3924 Device "FileDev0" not in SD Device resources or no matching Media 
Type or is disabled.

Those Dmsg1 calls give me an idea:

*setdebug level=150 storage=FileStorage0
*setdebug level=150 storage=FileStorage1
*setdebug level=150 director

I'll see if I get anything useful from this tonight.

Thanks!

Brian.

_______________________________________________
Bacula-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bacula-users
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.