View Issue Details

IDProjectCategoryView StatusLast Update
0000283bareos-core[All Projects] directorpublic2014-05-16 16:18
ReporterspreadshirtAssigned To 
PrioritynormalSeverityminorReproducibilityalways
Status acknowledgedResolutionopen 
PlatformLinuxOSUbuntuOS Version12.04
Product Version13.2.2 
Fixed in Version 
Summary0000283: virtual backup job with autoprune tries to mount from wrong device
DescriptionWhen a virtual full backup job starts and finds volumes to autoprune in the target device, it successfully purges the first volume, but tries to mount it in the source device, even when there is an appendable volume available.

If purged volumes are available, it works as expected.
Cancelling the job and start it again works too.
Steps To Reproduce1. Have a backup done at first device.
2. Start a VirtualFull backup from this backup to second device, with volumes which will be autopruned.

Expected result:
* If there is an appendable volume in the second device, it's used, then/or autoprune other volumes and they are used.

Actual result:
* It prunes a volume in second device and tries to mount it in first device. Director is asking for Operater intervention and wait for mount of volume.
Additional Informationbareos-sd.conf:

Device {
  Name = FileStorage
  Media Type = File
  Archive Device = /var/lib/bareos/storage
  LabelMedia = yes; # lets Bareos label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes; # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
  LabelMedia = yes;
}

Device {
  Name = VirtualStorage
  Media Type = File
  Archive Device = /var/lib/bareos/virtual
  LabelMedia = yes; # lets Bareos label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes; # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
  LabelMedia = yes;
}

bareos-dir.conf:

Storage {
  Name = File
# Do not use "localhost" here
  Address = backup.server.hq.sprd.net # N.B. Use a fully qualified name here
  Password = "***pass***"
  Device = FileStorage
  Media Type = File
  Maximum Concurrent Jobs = 4
}

Storage {
  Name = Virtual
# Do not use "localhost" here
  Address = backup.server.hq.sprd.net # N.B. Use a fully qualified name here
  Password = "***pass***"
  Device = VirtualStorage
  Media Type = File
  Maximum Concurrent Jobs = 4
}

Pool {
  Name = "mars_test"
  Pool Type = Backup
  Recycle = yes # Bareos can automatically recycle Volumes
  AutoPrune = yes # Prune expired volumes
  Volume Retention = 10 minutes
  Maximum Volume Bytes = 5G # Limit Volume size to something reasonable
  Maximum Volumes = 100 # Limit number of Volumes in Pool
  LabelFormat = "mars_test"
  Storage = File
  NextPool = "mars_test_virtual"
}

Pool {
  Name = "mars_test_virtual"
  Pool Type = Backup
  Recycle = yes # Bareos can automatically recycle Volumes
  AutoPrune = yes # Prune expired volumes
  Volume Retention = 10 minutes
  Maximum Volume Bytes = 5G # Limit Volume size to something reasonable
  Maximum Volumes = 100 # Limit number of Volumes in Pool
  LabelFormat = "mars_test_virtual_"
  Storage = Virtual
}

Job {
  Name = "mars_test"
  JobDefs = "DefaultJob"
  Pool = "mars_test"
  Client = mars-fd
  FileSet = "mars_test"
}

Job {
  Name = "mars_test_virtual"
  JobDefs = "DefaultJob"
  Pool = "mars_test"
  Client = mars-fd
  FileSet = "mars_test"
  Level = VirtualFull
  Storage = Virtual
}

Example:
In device FileStorage there are the volumes mars_test0001, mars_test0002 and mars_test0003 with a differential backup of job mars_test.

In device VirtualStorage there are the volumes mars_test_virtual_0004, mars_test_virtual_0005 and mars_test_virtual_0006, where the retention time of 0004 and 0005 is expired and 0006 is appendable.

/var/log/bareos/bareos.log:

26-Feb 13:16 backup-dir JobId 16: Start Virtual Backup JobId 16, Job=mars_test_virtual.2014-02-26_13.16.37_18
26-Feb 13:16 backup-dir JobId 16: Warning: This Job is not an Accurate backup so is not equivalent to a Full backup.
26-Feb 13:16 backup-dir JobId 16: Bootstrap records written to /var/lib/bareos/backup-dir.restore.7.bsr
26-Feb 13:16 backup-dir JobId 16: Using Device "FileStorage" to read.
26-Feb 13:16 backup-dir JobId 16: There are no more Jobs associated with Volume "mars_test_virtual_0005". Marking it purged.
26-Feb 13:16 backup-dir JobId 16: All records pruned from Volume "mars_test_virtual_0005"; marking it "Purged"
26-Feb 13:16 backup-dir JobId 16: Recycled volume "mars_test_virtual_0005"
26-Feb 13:16 backup-dir JobId 16: Using Device "VirtualStorage" to write.
26-Feb 13:16 backup-sd JobId 16: Warning: acquire.c:226 Read open device "FileStorage" (/var/lib/bareos/storage) Volume "mars_test_virtual_0005" failed: ERR=dev.c:556 Could not open: /var/lib/bareos/storage/mars_test_virtual_0005, ERR=Datei oder Verzeichnis nicht gefunden

26-Feb 13:16 backup-sd JobId 16: Please mount read Volume "mars_test_virtual_0005" for:
    Job: mars_test_virtual.2014-02-26_13.16.37_18
    Storage: "FileStorage" (/var/lib/bareos/storage)
    Pool: mars_test
    Media type: File
26-Feb 13:19 backup-sd JobId 16: acquire.c:207 Job 16 canceled.
26-Feb 13:19 backup-sd JobId 16: Fatal error: mac.c:543 Fatal append error on device "VirtualStorage" (/var/lib/bareos/virtual): ERR=dev.c:556 Could not open: /var/lib/bareos/virtual/mars_test_virtual_0006, ERR=Datei oder Verzeichnis nicht gefunden

26-Feb 13:19 backup-sd JobId 16: Elapsed time=387060:19:44, Transfer rate=0 Bytes/second
26-Feb 13:19 backup-dir JobId 16: Bareos backup-dir 13.2.2 (12Nov13):
  Build OS: x86_64-pc-linux-gnu ubuntu Ubuntu 12.04 LTS
  JobId: 16
  Job: mars_test_virtual.2014-02-26_13.16.37_18
  Backup Level: Full
  Client: "mars-fd" 13.2.2 (12Nov13) x86_64-unknown-linux-gnu,debian,4.0
  FileSet: "mars_test" 2014-02-25 10:30:02
  Pool: "mars_test_virtual" (From Job Pool's NextPool resource)
  Catalog: "MyCatalog" (From Client resource)
  Storage: "Virtual" (From Storage from Pool's NextPool resource)
  Scheduled time: 26-Feb-2014 13:16:35
  Start time: 26-Feb-2014 13:02:40
  End time: 26-Feb-2014 13:02:44
  Elapsed time: 4 secs
  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
  Accurate: no
  Volume name(s):
  Volume Session Id: 11
  Volume Session Time: 1393321971
  Last Volume Bytes: 0 (0 B)
  Non-fatal FD errors: 0
  SD Errors: 1
  FD termination status:
  SD termination status: Canceled
  Termination: Backup Canceled

26-Feb 13:19 backup-dir JobId 17: Start Virtual Backup JobId 17, Job=mars_test_virtual.2014-02-26_13.19.50_19
26-Feb 13:19 backup-dir JobId 17: Warning: This Job is not an Accurate backup so is not equivalent to a Full backup.
26-Feb 13:19 backup-dir JobId 17: Bootstrap records written to /var/lib/bareos/backup-dir.restore.8.bsr
26-Feb 13:19 backup-dir JobId 17: Using Device "FileStorage" to read.
26-Feb 13:19 backup-dir JobId 17: Using Device "VirtualStorage" to write.
26-Feb 13:19 backup-sd JobId 17: Ready to read from volume "mars_test0001" on device "FileStorage" (/var/lib/bareos/storage).
26-Feb 13:19 backup-sd JobId 17: Volume "mars_test_virtual_0004" previously written, moving to end of data.
26-Feb 13:19 backup-sd JobId 17: Ready to append to end of Volume "mars_test_virtual_0004" size=4119313450
26-Feb 13:19 backup-sd JobId 17: Forward spacing Volume "mars_test0001" to file:block 0:222.
26-Feb 13:19 backup-sd JobId 17: User defined maximum volume capacity 5,368,709,120 exceeded on device "VirtualStorage" (/var/lib/bareos/virtual).
26-Feb 13:19 backup-sd JobId 17: End of medium on Volume "mars_test_virtual_0004" Bytes=5,368,652,785 Blocks=83,220 at 26-Feb-2014 13:19.
26-Feb 13:19 backup-sd JobId 17: Recycled volume "mars_test_virtual_0005" on device "VirtualStorage" (/var/lib/bareos/virtual), all previous data lost.
26-Feb 13:19 backup-sd JobId 17: New volume "mars_test_virtual_0005" mounted on device "VirtualStorage" (/var/lib/bareos/virtual) at 26-Feb-2014 13:19.
26-Feb 13:20 backup-sd JobId 17: End of Volume at file 1 on device "FileStorage" (/var/lib/bareos/storage), Volume "mars_test0001"
26-Feb 13:20 backup-sd JobId 17: Ready to read from volume "mars_test0002" on device "FileStorage" (/var/lib/bareos/storage).
26-Feb 13:20 backup-sd JobId 17: Forward spacing Volume "mars_test0002" to file:block 0:222.
26-Feb 13:20 backup-sd JobId 17: User defined maximum volume capacity 5,368,709,120 exceeded on device "VirtualStorage" (/var/lib/bareos/virtual).
26-Feb 13:20 backup-sd JobId 17: End of medium on Volume "mars_test_virtual_0005" Bytes=5,368,688,874 Blocks=83,220 at 26-Feb-2014 13:20.
26-Feb 13:20 backup-dir JobId 17: There are no more Jobs associated with Volume "mars_test_virtual_0006". Marking it purged.
26-Feb 13:20 backup-dir JobId 17: All records pruned from Volume "mars_test_virtual_0006"; marking it "Purged"
26-Feb 13:20 backup-dir JobId 17: Recycled volume "mars_test_virtual_0006"
26-Feb 13:20 backup-sd JobId 17: Recycled volume "mars_test_virtual_0006" on device "VirtualStorage" (/var/lib/bareos/virtual), all previous data lost.
26-Feb 13:20 backup-sd JobId 17: New volume "mars_test_virtual_0006" mounted on device "VirtualStorage" (/var/lib/bareos/virtual) at 26-Feb-2014 13:20.
26-Feb 13:21 backup-sd JobId 17: End of Volume at file 1 on device "FileStorage" (/var/lib/bareos/storage), Volume "mars_test0002"
26-Feb 13:21 backup-sd JobId 17: Ready to read from volume "mars_test0003" on device "FileStorage" (/var/lib/bareos/storage).
26-Feb 13:21 backup-sd JobId 17: Forward spacing Volume "mars_test0003" to file:block 0:222.
26-Feb 13:22 backup-sd JobId 17: End of Volume at file 0 on device "FileStorage" (/var/lib/bareos/storage), Volume "mars_test0003"
26-Feb 13:22 backup-sd JobId 17: End of all volumes.
26-Feb 13:22 backup-sd JobId 17: Elapsed time=00:02:17, Transfer rate=86.61 M Bytes/second
26-Feb 13:22 backup-dir JobId 17: Bareos backup-dir 13.2.2 (12Nov13):
  Build OS: x86_64-pc-linux-gnu ubuntu Ubuntu 12.04 LTS
  JobId: 17
  Job: mars_test_virtual.2014-02-26_13.19.50_19
  Backup Level: Full
  Client: "mars-fd" 13.2.2 (12Nov13) x86_64-unknown-linux-gnu,debian,4.0
  FileSet: "mars_test" 2014-02-25 10:30:02
  Pool: "mars_test_virtual" (From Job Pool's NextPool resource)
  Catalog: "MyCatalog" (From Client resource)
  Storage: "Virtual" (From Storage from Pool's NextPool resource)
  Scheduled time: 26-Feb-2014 13:19:49
  Start time: 26-Feb-2014 13:02:40
  End time: 26-Feb-2014 13:02:44
  Elapsed time: 4 secs
  Priority: 10
  FD Files Written: 5,950
  SD Files Written: 5,950
  FD Bytes Written: 11,866,750,223 (11.86 GB)
  SD Bytes Written: 11,866,750,223 (11.86 GB)
  Rate: 2966687.6 KB/s
  Software Compression: None
  VSS: no
  Encryption: no
  Accurate: no
  Volume name(s): mars_test_virtual_0004|mars_test_virtual_0005|mars_test_virtual_0006
  Volume Session Id: 12
  Volume Session Time: 1393321971
  Last Volume Bytes: 5,257,692,196 (5.257 GB)
  Non-fatal FD errors: 0
  SD Errors: 0
  FD termination status:
  SD termination status: OK
  Termination: Backup OK


"Datei oder Verzeichnis nicht gefunden" = "File or directory not found"
TagsNo tags attached.
bareos-master: impact
bareos-master: action
bareos-19.2: impact
bareos-19.2: action
bareos-18.2: impact
bareos-18.2: action
bareos-17.2: impact
bareos-17.2: action
bareos-16.2: impact
bareos-16.2: action
bareos-15.2: impact
bareos-15.2: action
bareos-14.2: impact
bareos-14.2: action
bareos-13.2: impact
bareos-13.2: action
bareos-12.4: impact
bareos-12.4: action

Activities

spreadshirt

spreadshirt

2014-02-27 15:59

reporter   ~0000829

Changing to different media types at devices doesn't help (but error changes):

bareos-sd.conf:

Device {
  Name = FileStorage
  Media Type = File
  Archive Device = /var/lib/bareos/storage
  LabelMedia = yes; # lets Bareos label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes; # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
  LabelMedia = yes;
}

Device {
  Name = VirtualStorage
  Media Type = Virtual
  Archive Device = /var/lib/bareos/virtual
  LabelMedia = yes; # lets Bareos label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes; # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
  LabelMedia = yes;
}

bareos-dir.conf:

Storage {
  Name = File
# Do not use "localhost" here
  Address = backup.server.hq.sprd.net # N.B. Use a fully qualified name here
  Password = "***pass***"
  Device = FileStorage
  Media Type = File
  Maximum Concurrent Jobs = 4
}

Storage {
  Name = Virtual
# Do not use "localhost" here
  Address = backup.server.hq.sprd.net # N.B. Use a fully qualified name here
  Password = "***pass***"
  Device = VirtualStorage
  Media Type = Virtual
  Maximum Concurrent Jobs = 4
}

Jobs and pools same as above.

In bconsole:

*run job=mars_test_virtual
Using Catalog "MyCatalog"
Run Backup job
JobName: mars_test_virtual
Level: VirtualFull
Client: mars-fd
Format: Native
FileSet: mars_test
Pool: mars_test (From Job resource)
NextPool: mars_test_virtual (From unknown source)
Storage: Virtual (From Storage from Run NextPool override)
When: 2014-02-27 15:51:36
Priority: 10
OK to run? (yes/mod/no):
Job queued. JobId=38

27-Feb 15:51 backup-dir JobId 38: Start Virtual Backup JobId 38, Job=mars_test_virtual.2014-02-27_15.51.38_14
27-Feb 15:51 backup-dir JobId 38: Warning: This Job is not an Accurate backup so is not equivalent to a Full backup.
27-Feb 15:51 backup-dir JobId 38: Bootstrap records written to /var/lib/bareos/backup-dir.restore.8.bsr
27-Feb 15:51 backup-dir JobId 38: Using Device "FileStorage" to read.
27-Feb 15:51 backup-dir JobId 38: There are no more Jobs associated with Volume "mars_test_virtual_0397". Marking it purged.
27-Feb 15:51 backup-dir JobId 38: All records pruned from Volume "mars_test_virtual_0397"; marking it "Purged"
27-Feb 15:51 backup-dir JobId 38: Recycled volume "mars_test_virtual_0397"
27-Feb 15:51 backup-dir JobId 38: Using Device "VirtualStorage" to write.
27-Feb 15:51 backup-sd JobId 38: acquire.c:114 Changing read device. Want Media Type="Virtual" have="File"
  device="FileStorage" (/var/lib/bareos/storage)
27-Feb 15:51 backup-sd JobId 38: Fatal error: acquire.c:169 No suitable device found to read Volume "mars_test_virtual_0397"
27-Feb 15:51 backup-sd JobId 38: Fatal error: mac.c:543 Fatal append error on device "VirtualStorage" (/var/lib/bareos/virtual): ERR=dev.c:556 Could not open: /var/lib/bareos/virtual/mars_test_virtual_0399, ERR=No such file or directory

27-Feb 15:51 backup-sd JobId 38: Elapsed time=387086:51:41, Transfer rate=0 Bytes/second
27-Feb 15:51 backup-dir JobId 38: Error: Bareos backup-dir 13.2.2 (12Nov13):
  Build OS: x86_64-pc-linux-gnu ubuntu Ubuntu 12.04 LTS
  JobId: 38
  Job: mars_test_virtual.2014-02-27_15.51.38_14
  Backup Level: Full
  Client: "mars-fd" 13.2.2 (12Nov13) x86_64-unknown-linux-gnu,debian,4.0
  FileSet: "mars_test" 2014-02-25 10:30:02
  Pool: "mars_test_virtual" (From Job Pool's NextPool resource)
  Catalog: "MyCatalog" (From Client resource)
  Storage: "Virtual" (From Storage from Pool's NextPool resource)
  Scheduled time: 27-Feb-2014 15:51:36
  Start time: 27-Feb-2014 14:28:54
  End time: 27-Feb-2014 14:31:17
  Elapsed time: 2 mins 23 secs
  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
  Accurate: no
  Volume name(s):
  Volume Session Id: 7
  Volume Session Time: 1393510193
  Last Volume Bytes: 0 (0 B)
  Non-fatal FD errors: 0
  SD Errors: 1
  FD termination status:
  SD termination status: Error
  Termination: *** Backup Error ***


As a side note, have a look at the strange times:
  Scheduled time: 27-Feb-2014 15:51:36
  Start time: 27-Feb-2014 14:28:54
  End time: 27-Feb-2014 14:31:17

Issue History

Date Modified Username Field Change
2014-02-26 15:08 spreadshirt New Issue
2014-02-27 15:59 spreadshirt Note Added: 0000829
2014-05-16 16:18 joergs Status new => acknowledged