Challenge
Task fails with the error "root element is missing."
You can find such entries in the log file:
[timestamp] <01> Error Read summary xml error at Veeam.Backup.Core.CRawSummary.CreateOibSummary() [timestamp] <01> Error at Veeam.Backup.Core.CSynOibAlg.CreateOib(CPoint fullPoint, CPoint rollPoint, CStorage fullStorage, CStorage rollStorage, COib rollOib) [timestamp] <01> Error at Veeam.Backup.Core.CBackupJobPerformer.ExecuteTask(IBackupTask task, ITarget target) [timestamp] <01> Error Root element is missing. at System.Xml.XmlTextReaderImpl.Throw(Exception e)
Cause
This usually occurs when part of Veeam data could not be written to the summary.xml file (due to space, connectivity issue or some other specific issue). After that failure, cleaning up space on a target or fixing other problems that caused this behavior initially will not let you proceed with the incremental because the summary.xml is missing critical information on the previous backup.
Solution
There are two methods to potentially resolve this:
- The first option is to run a full backup on the corresponding job by right-clicking on a job and selecting "perform full backup". This is the method that leaves the least possibility of later issues.
- The second option is more involved, has some caveats, and is not guaranteed to work but may save some time.
- Verify the job itself is not currently running.
- Once verified go into the backup repository and locate the backup files for the job having the issue.
- Move the VBM file to another location without deleting it.
- After the VBM file has been moved, return to Veeam B&R and run a normal backup operation.
Note: This also works for PerVM and SOBR based backups.
Note 2: When moving the VBM, do so to a path outside the backup repository path. For instance, if the repository path is C:\Backups, move the VBM to either the root of the drive or another path from the drive. If it is placed in another subfolder of C:\Backups, and the repository is re-scanned, Veeam will attempt to import the VBM as a backup.
This will attempt to create a new VBM file for the chain itself using metadata mirrored in the full backup storages, without the need to create another active full backup, avoiding larger amounts of data being sent to the repository. If this fails, the first option will likely be necessary.
If the chain contains multiple full backups, only the latest full and increments following it will be used to recreate the VBM file. Retention may need to be performed manually by deleting older backup files when they are no longer needed.