When attempting to run a backup job for a SQL Server that is in either a SQL Server Failover Cluster or AlwaysOn Failover Cluster with a shared VHDX the backup job reports the warning:
“Failed to truncate transaction logs for SQL instances: <>. Possible reasons: lack of permissions, or transaction log corruption” or SQL log backup job fails with “Regular database <> was not backed up in Oib”
On the guest, within the VeeamGuestHelper.log found in %programdata%\Veeam\Backup the following line can be found:
OLEDB Error: 'BACKUP LOG cannot be performed because there is no current database backup.'
This is behavior by design. Backup of VMs with shared VHDX disks can only be performed in crash consistent mode, with Application-Aware Procesing disabled.
Because the VSS subsystem is not involved in the backup process, the SQL Server is not aware of a backup having occurred and does not update date of last database backup. Due to this lack of an update to the last database backup entry, when the SQL Instances receives the command to truncate logs (“backup log”), it cannot find a corresponding database backup event and returns the error above.
SQL logs truncation or backup is not possible in this configuration. Please change to using a AlwaysOn Availability Groups SQL installation with individual VHD(X) for each VM.