>> 04-Feb 15:02 bcopy JobId 0: Warning: vol_mgr.c:386 Could not reserve volume
>> "PPPVE3LTOCopy_0001" for append, because it will be read.
> Googling about this lead me to only two result:
I've run it under heavvy debug:
root@pppve3:~# bcopy -d999 LTO5Storage FileStorage -i PPPVE3_0004 -o
PPPVE3LTOCopy_0001
bcopy: parse_conf.c:1003-0 Enter parse_config()
bcopy: parse_conf.c:1005-0 parse_config pass 1
bcopy: lex.c:252-0 Open config file: /etc/bacula/bacula-sd.conf
[...]
bcopy: parse_conf.c:1149-0 Leave parse_config()
bcopy: sd_plugins.c:200-0 Load sd plugins
[...]
bcopy: bcopy.c:166-0 About to setup input jcr
bcopy: jcr.c:934-0 set_jcr_job_status(0, C)
bcopy: jcr.c:943-0 OnEntry JobStatus=0 newJobstatus=C
bcopy: jcr.c:954-0 Set new stat. old: 0,0 new: C,0
bcopy: jcr.c:959-0 leave setJobStatus old=0 new=C
bcopy: butil.c:256-0 Enter find_device_res
bcopy: butil.c:259-0 Compare /dev/nst0 and LTO5Storage
bcopy: butil.c:259-0 Compare /rpool-backup/bacula and LTO5Storage
bcopy: butil.c:259-0 Compare /rpool-backup/bacula and LTO5Storage
bcopy: butil.c:259-0 Compare /rpool-backup/bacula and LTO5Storage
bcopy: butil.c:259-0 Compare /rpool-backup/bacula and LTO5Storage
bcopy: butil.c:259-0 Compare /rpool-backup/bacula and LTO5Storage
bcopy: butil.c:259-0 Compare /rpool-backup/bacula and LTO5Storage
bcopy: butil.c:276-0 Compare LTO5Storage and LTO5Storage
bcopy: butil.c:292-0 Using device: "LTO5Storage" for reading.
[...]
bcopy: message.c:816-0 Enter dispatch_msg type=6 msg=bcopy JobId 0: Ready to
read from volume "PPPVE3_0004" on Tape device "LTO5Storage" (/dev/nst0).
bcopy: message.c:1041-0 STDOUT for following msg: bcopy JobId 0: Ready to read
from volume "PPPVE3_0004" on Tape device "LTO5Storage" (/dev/nst0). 10-Feb
15:18 bcopy JobId 0: Ready to read from volume "PPPVE3_0004" on Tape device
"LTO5Storage" (/dev/nst0).
bcopy: lock.c:157-0 Lock LTO5Storage from acquire.c:339 precnt=0
bcopy: lock.c:421-0 Unblocked LTO5Storage BST_DOING_ACQUIRE from lock.c:142
bcopy: lock.c:167-0 Unlock LTO5Storage from lock.c:143 postcnt=0
bcopy: acquire.c:354-0 dcr=55824a993068 dev=55824a992408
bcopy: acquire.c:355-0 MediaType dcr= dev=LTO
bcopy: lock.c:294-0 Unlock_read_acquire from acquire.c:356
bcopy: acquire.c:357-0 Leave: bool acquire_device_for_read(DCR*)
[...]
bcopy: bcopy.c:178-0 About to setup output jcr
bcopy: jcr.c:934-0 set_jcr_job_status(0, C)
bcopy: jcr.c:943-0 OnEntry JobStatus=0 newJobstatus=C
bcopy: jcr.c:954-0 Set new stat. old: 0,0 new: C,0
bcopy: jcr.c:959-0 leave setJobStatus old=0 new=C
bcopy: butil.c:256-0 Enter find_device_res
bcopy: butil.c:259-0 Compare /dev/nst0 and FileStorage
bcopy: butil.c:259-0 Compare /rpool-backup/bacula and FileStorage
bcopy: butil.c:259-0 Compare /rpool-backup/bacula and FileStorage
bcopy: butil.c:259-0 Compare /rpool-backup/bacula and FileStorage
bcopy: butil.c:259-0 Compare /rpool-backup/bacula and FileStorage
bcopy: butil.c:259-0 Compare /rpool-backup/bacula and FileStorage
bcopy: butil.c:259-0 Compare /rpool-backup/bacula and FileStorage
bcopy: butil.c:276-0 Compare LTO5Storage and FileStorage
bcopy: butil.c:276-0 Compare FileStorage and FileStorage
bcopy: butil.c:290-0 Using device: "FileStorage" for writing.
bcopy: sd_plugins.c:156-0 No b_plugin_list: generate_global_plugin_event
ignored.
bcopy: init_dev.c:116-0 init_dev dev_type=0
bcopy: init_dev.c:152-0 Num drivers=15
bcopy: init_dev.c:165-0 loadable=0 type=1 loaded=1 name=file handle=0
bcopy: init_dev.c:252-0 Allocate dev="FileStorage" (/rpool-backup/bacula)
bcopy: init_dev.c:391-0 init_dev: tape=0 dev_name=/rpool-backup/bacula
bcopy: block_util.c:167-0 Rechdr len=64512 max_items=3225
bcopy: block_util.c:286-0 empty_block: adata=0 len=64512 set binbuf=24
bcopy: block_util.c:170-0 New block adata=0 len=64512 block=55824a99b840
bcopy: acquire.c:663-0 Attach 0x4a99b228 to dev "FileStorage"
(/rpool-backup/bacula)
bcopy: acquire.c:709-0 JobId=0 enter attach_dcr_to_dev
bcopy: acquire.c:714-0 Attach Jid=0 dcr=55824a99b228 size=0 dev="FileStorage"
(/rpool-backup/bacula)
bcopy: vol_mgr.c:152-0 add read_vol=PPPVE3LTOCopy_0001 JobId=0
bcopy: device.c:304-0 start open_output_device()
bcopy: lock.c:213-0 Enter rLock blked=BST_NOT_BLOCKED from device.c:309
bcopy: lock.c:217-0 Lock FileStorage in rLock BST_NOT_BLOCKED from device.c:309
bcopy: device.c:313-0 Device is file, deferring open.
bcopy: lock.c:173-0 rUnlock from device.c:326
bcopy: lock.c:167-0 Unlock FileStorage from device.c:326 postcnt=0
bcopy: bcopy.c:187-0 About to acquire device for writing
bcopy: lock.c:213-0 Enter rLock blked=BST_NOT_BLOCKED from bcopy.c:189
bcopy: lock.c:217-0 Lock FileStorage in rLock BST_NOT_BLOCKED from bcopy.c:189
bcopy: file_dev.c:138-0 Enter: virtual bool file_dev::open_device(DCR*, int)
bcopy: dev.c:113-0 Enter: virtual bool DEVICE::open_device(DCR*, int)
bcopy: dev.c:325-0 Enter: virtual bool DEVICE::mount(int)
bcopy: file_dev.c:184-0 open disk: mode=OPEN_READ_WRITE
open(/rpool-backup/bacula/PPPVE3LTOCopy_0001, 0x2, 0640)
bcopy: file_dev.c:194-0 Did
open(/rpool-backup/bacula/PPPVE3LTOCopy_0001,OPEN_READ_WRITE,0640)
bcopy: file_dev.c:211-0 open dev: disk fd=4 opened
bcopy: file_dev.c:214-0 Leave: virtual bool file_dev::open_device(DCR*, int)
bcopy: lock.c:167-0 Unlock FileStorage from bcopy.c:195 postcnt=0
bcopy: acquire.c:377-0 Enter: DCR* acquire_device_for_append(DCR*)
bcopy: lock.c:276-0 Lock_acquire from acquire.c:381
bcopy: lock.c:157-0 Lock FileStorage from acquire.c:382 precnt=0
bcopy: acquire.c:383-0 acquire_append device is File
bcopy: lock.c:213-0 Enter rLock blked=BST_NOT_BLOCKED from acquire.c:416
bcopy: lock.c:410-0 Blocked FileStorage BST_DOING_ACQUIRE from acquire.c:417
bcopy: lock.c:167-0 Unlock FileStorage from acquire.c:418 postcnt=0
bcopy: acquire.c:419-0 jid=0 Do mount_next_write_vol
bcopy: mount.c:73-0 Enter: bool DCR::mount_next_write_volume()
bcopy: mount.c:76-0 Enter mount_next_volume(release=0) dev="FileStorage"
(/rpool-backup/bacula)
bcopy: mount.c:88-0 mount_next_vol retry=0
bcopy: mount.c:636-0 No swap_dev set. dev->vol=0
bcopy: mount.c:361-0 Before dir_find_next_appendable_volume.
bcopy: askdir.c:172-0 Fake dir_get_volume_info
bcopy: askdir.c:174-0 Vol=PPPVE3LTOCopy_0001 VolType=0
bcopy: mount.c:123-0 After find_a_volume. Vol=PPPVE3LTOCopy_0001 Slot=0
VolType=0
bcopy: dev.c:506-0 Notify dcrs of vol change. oldVolume=PPPVE3LTOCopy_0001
NewVolume=PPPVE3LTOCopy_0001
bcopy: autochanger.c:105-0 Device "FileStorage" (/rpool-backup/bacula) is not
an autochanger
bcopy: mount.c:151-0 autoload_dev returns 0
bcopy: mount.c:164-0 (2)Ask=0
bcopy: mount.c:167-0 Ask=0 autochanger=0
bcopy: mount.c:182-0 want vol=PPPVE3LTOCopy_0001 devvol= dev="FileStorage"
(/rpool-backup/bacula)
bcopy: mount.c:190-0 Try open Vol=PPPVE3LTOCopy_0001
bcopy: file_dev.c:138-0 Enter: virtual bool file_dev::open_device(DCR*, int)
bcopy: dev.c:113-0 Enter: virtual bool DEVICE::open_device(DCR*, int)
bcopy: file_dev.c:140-0 Leave: virtual bool file_dev::open_device(DCR*, int)
bcopy: file_dev.c:138-0 Enter: virtual bool file_dev::open_device(DCR*, int)
bcopy: dev.c:113-0 Enter: virtual bool DEVICE::open_device(DCR*, int)
bcopy: file_dev.c:140-0 Leave: virtual bool file_dev::open_device(DCR*, int)
bcopy: mount.c:399-0 Enter: int DCR::check_volume_label(bool&, bool&)
bcopy: label.c:72-0 Enter: virtual int DEVICE::read_dev_volume_label(DCR*)
bcopy: label.c:75-0 Enter read_volume_label adata=0 res=0 device="FileStorage"
(/rpool-backup/bacula) vol=PPPVE3LTOCopy_0001 dev_Vol=*NULL*
bcopy: label.c:90-0 ==== worm=0 ====
bcopy: file_dev.c:71-0 Enter: virtual bool DEVICE::rewind(DCR*)
bcopy: file_dev.c:72-0 rewind res=0 fd=4 "FileStorage" (/rpool-backup/bacula)
bcopy: block_util.c:286-0 empty_block: adata=0 len=64512 set binbuf=24
bcopy: label.c:129-0 Big if statement in read_volume_label
bcopy: block.c:520-0 Pos for read=0 0
bcopy: block.c:545-0 Read() adata=0 vol= nbytes=245 pos=0
bcopy: block_util.c:448-0 unser_block_header block_len=245
bcopy: block_util.c:456-0 set block=55824a99b840 adata=0 binbuf=221
bcopy: block_util.c:460-0 Read binbuf = 221 24 block_len=245
bcopy: block.c:641-0 adata=0 block_len=245 buf_len=64512
bcopy: block.c:734-0 At end of read block
bcopy: block.c:748-0 Exit read_block read_len=245 block_len=245 binbuf=221
bcopy: block_util.c:105-0 Dump block st_none 55824a99b840: adata=0 size=245
BlkNum=0
Hdrcksum=e22956af cksum=e22956af
bcopy: record_read.c:211-0 Rdata full adata=0 FI=PRE_LABEL SessId=0 Strm=0
len=209 block=55824a99b840
bcopy: label.c:982-0 Enter: bool unser_volume_label(DEVICE*, DEV_RECORD*)
bcopy: label.c:999-0 reclen=209 recdata=Bacula 1.0 immortal
bcopy: label.c:1001-0 reclen=209 recdata=Bacula 1.0 immortal
bcopy: label.c:1035-0 unser_vol_label
Volume Label:
Adata : 0
Id : Bacula 1.0 immortal
VerNo : 11
VolName : PPPVE3LTOCopy_0001
PrevVolName :
VolFile : 0
LabelType : PRE_LABEL
LabelSize : 209
PoolName : FVG-PP-PPPVE3LTOCopyPool
MediaType : File
PoolType : Backup
HostName : pppve3
Date label written: 04-Feb-2025 14:25
bcopy: label.c:1039-0 Leave: bool unser_volume_label(DEVICE*, DEV_RECORD*)
bcopy: label.c:152-0 VolHdr.Id OK: Bacula 1.0 immortal
bcopy: record_util.c:277-0 Enter free_record.
bcopy: record_util.c:281-0 Data buf is freed.
bcopy: record_util.c:283-0 Leave free_record.
bcopy: label.c:191-0 VolHdr.VerNum=11 OK.
bcopy: label.c:211-0 Compare Vol names: VolName=PPPVE3LTOCopy_0001
hdr=PPPVE3LTOCopy_0001
Volume Label:
Adata : 0
Id : Bacula 1.0 immortal
VerNo : 11
VolName : PPPVE3LTOCopy_0001
PrevVolName :
VolFile : 0
LabelType : PRE_LABEL
LabelSize : 209
PoolName : FVG-PP-PPPVE3LTOCopyPool
MediaType : File
PoolType : Backup
HostName : pppve3
Date label written: 04-Feb-2025 14:25
bcopy: label.c:261-0 Leave read_volume_label() VOL_OK
bcopy: file_dev.c:71-0 Enter: virtual bool DEVICE::rewind(DCR*)
bcopy: file_dev.c:72-0 rewind res=0 fd=4 "FileStorage" (/rpool-backup/bacula)
bcopy: label.c:274-0 Call reserve_volume=PPPVE3LTOCopy_0001
bcopy: vol_mgr.c:381-0 enter reserve_volume=PPPVE3LTOCopy_0001
drive="FileStorage" (/rpool-backup/bacula)
bcopy: label.c:280-0 Could not reserve volume PPPVE3LTOCopy_0001 on
"FileStorage" (/rpool-backup/bacula)
bcopy: block_util.c:286-0 empty_block: adata=0 len=64512 set binbuf=24
bcopy: file_dev.c:71-0 Enter: virtual bool DEVICE::rewind(DCR*)
bcopy: file_dev.c:72-0 rewind res=0 fd=4 "FileStorage" (/rpool-backup/bacula)
bcopy: label.c:295-0 return stat=5 vol_mgr.c:386 Could not reserve volume
"PPPVE3LTOCopy_0001" for append, because it will be read.
bcopy: label.c:296-0 Leave: virtual int DEVICE::read_dev_volume_label(DCR*)
bcopy: mount.c:418-0 Want dirVol=PPPVE3LTOCopy_0001 dirStat=
bcopy: mount.c:433-0 Vol NAME Error Have=PPPVE3LTOCopy_0001,
want=PPPVE3LTOCopy_0001
bcopy: askdir.c:172-0 Fake dir_get_volume_info
bcopy: askdir.c:174-0 Vol=PPPVE3LTOCopy_0001 VolType=0
bcopy: mount.c:493-0 Got new Volume name=PPPVE3LTOCopy_0001
bcopy: mount.c:495-0 Call reserve_volume=PPPVE3LTOCopy_0001
bcopy: vol_mgr.c:381-0 enter reserve_volume=PPPVE3LTOCopy_0001
drive="FileStorage" (/rpool-backup/bacula)
bcopy: message.c:1455-0 Enter Jmsg type=5
bcopy: message.c:816-0 Enter dispatch_msg type=5 msg=bcopy JobId 0: Warning:
vol_mgr.c:386 Could not reserve volume "PPPVE3LTOCopy_0001" for append, because
it will be read.
bcopy: message.c:1041-0 STDOUT for following msg: bcopy JobId 0: Warning:
vol_mgr.c:386 Could not reserve volume "PPPVE3LTOCopy_0001" for append, because
it will be read.
10-Feb 15:18 bcopy JobId 0: Warning: vol_mgr.c:386 Could not reserve volume
"PPPVE3LTOCopy_0001" for append, because it will be read.
bcopy: mount.c:548-0 Leave: int DCR::check_volume_label(bool&, bool&)
bcopy: mount.c:246-0 set_unload
If i understand well the code and the debug, in 'label.c' the volume get
opened to read the label, and succeded; after that the volume get reopened
to be 'reserved', and this lead to the infamous error 'Could not reserve volume
... for append, because it will be read'.
Looking at code lead me to vol_mgr.c, row 383:
https://gitlab.bacula.org/bacula-community-edition/bacula-community/-/blob/Branch-9.4/bacula/src/stored/vol_mgr.c?ref_type=heads#L383
and if i've understood well the code check if the volume is in a read list,
but this info is probably available only if the check get done by a
director (or an SD), not by bcopy standalone program.
Seems to me a very similar bug to:
https://bugs.bacula.org/view.php?id=2122
but my C and bacula knowledge is minimal...
Thanks.
--
_______________________________________________
Bacula-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bacula-users