Bacula “No prior or suitable Full backup found in catalog”

baculaubuntu-18.04

Ubuntu 18.04
Bacula 9.0.6-1build1

Bacula, for some reasons, fails to find a prior full backup job in its catalog, though a full backup job listed in the 'Job' table. Bacula-web shows that a full backup job successfully completed/terminated. Email notifications (job results) state the same.
Example:

JobID:41 Level:Full Status:Success 8/19/2019
JobID:43 Level:Incremental Status:Success 8/20/2019
JobID:44 Level:Full Status:Success 8/21/2019

Email notification (JobID 45):

21-Aug 01:30 ubuntu-hm-srv-1-dir JobId 45: **No prior Full backup Job record found.**
21-Aug 01:30 ubuntu-hm-srv-1-dir JobId 45: No prior or suitable Full backup found in catalog. Doing FULL backup.
21-Aug 01:30 ubuntu-hm-srv-1-dir JobId 45: Start Backup JobId 45, Job=ubuntu-hm-srv-1-Incremental-Backup.2019-08-21_01.30.00_05
21-Aug 01:30 ubuntu-hm-srv-1-dir JobId 45: There are no more Jobs associated with Volume "ub-hm-srv-1-Incr-Bak-0003". Marking it purged.
21-Aug 01:30 ubuntu-hm-srv-1-dir JobId 45: All records pruned from Volume "ub-hm-srv-1-Incr-Bak-0003"; marking it "Purged"
21-Aug 01:30 ubuntu-hm-srv-1-dir JobId 45: Recycled volume "ub-hm-srv-1-Incr-Bak-0003"
21-Aug 01:30 ubuntu-hm-srv-1-dir JobId 45: Using Device "FileChgr1-Dev1" to write.

Email notification (JobID 41):

19-Aug 16:23 ubuntu-hm-srv-1-dir JobId 41: Start Backup JobId 41, Job=ubuntu-hm-srv-1-Full-Backup.2019-08-19_16.23.00_02
19-Aug 16:23 ubuntu-hm-srv-1-dir JobId 41: Created new Volume="ub-hm-srv-1-Full-Bak-0015", Pool="ub-hm-srv-1-Full_Backups", MediaType="Disk-Stor-1" in catalog.
19-Aug 16:23 ubuntu-hm-srv-1-dir JobId 41: Using Device "FileChgr1-Dev1" to write.
19-Aug 16:23 ubuntu-hm-srv-1-sd JobId 41: Labeled new Volume "ub-hm-srv-1-Full-Bak-0015" on File device "FileChgr1-Dev1" (/mnt/backup/bacula/backup).
19-Aug 16:23 ubuntu-hm-srv-1-sd JobId 41: Wrote label to prelabeled Volume "ub-hm-srv-1-Full-Bak-0015" on File device "FileChgr1-Dev1" (/mnt/backup/bacula/backup)
19-Aug 16:23 ubuntu-hm-srv-1-dir JobId 41: Volume used once. Marking Volume "ub-hm-srv-1-Full-Bak-0015" as Used.

According to this Bacula document "I want an Incremental but Bacula runs it as a Full backup. Why?", "…If Bacula does not find a successful full backup, it proceeds to do one. Perhaps you canceled the full backup, or it terminated in error. In such cases, the full backup will not be successful…"
It wasn't a case with my backups. They were all terminated successfully.

"…Full backup of the same Job..". What do they mean by the same Job? These jobs are all different (incremental, differential and full). If they mean the same FileSet, so yes, it wasn't changed and the same for all backup jobs in question.

Why JobID 43 found a prior full job JobID 41, but JobID 44 didn't?

Any idea?

Thanks.

Best Answer

Eventually, I have asked this question via Bacula Mail List and now it is absolutely obvious that I have failed to learn Bacula configuration more thoroughly. My bacula-dir configuration was wrong in terms of using separate jobs for full, differential and incremental backups with separate schedules and I wanted to use separate pools for these jobs for backup rotation. It has to be done by using one job with the following related to my issue configurations:

    JobDefs {
      Name = "server-Backup_File_Job"
      Type = Backup
      Client = server-1-fd
      FileSet = "Full Set"
      Schedule = "WeeklyCycle"
      Storage = FileStorage
      Messages = Standard
      Pool = Default
      Full Backup Pool = server-Full_Backups
      Differential Backup Pool = server-Diff_Backups
      Incremental Backup Pool = server-Incr_Backups
      SpoolAttributes = yes
      Priority = 10
      Write Bootstrap = "/var/lib/bacula/%c.bsr"
    }

    Job {
      Name = "server-1-Backup"
      Client = server-1-fd
      JobDefs = "server-Backup_File_Job"
     }

    Schedule {
      Name = "WeeklyCycle"
      Run = Level=Full 1st sun at 01:30
      Run = Level=Differential 2nd-5th sun at 01:30
      Run = Level=Incremental mon-sat at 01:30
    }

And separate pools for each type of backup with the corresponding backup rotation settings.

So what I have found as confusing in provided in my post logs, turned out to be just a result of a mess with different backup jobs created by myself.

Related Topic