SQL Diff Backup not using latest full We're running a full SQL backup each day, then differentials each hour. This has been working on multiple servers for a long time now. I'm not aware of any changes that have been made but, on one server, in particular, the differentials are just getting bigger and bigger, instead of resetting back to a smaller size after a full backup. Normally on other servers, the first differential backup is a few hundred MB, but we're getting a 6GB file every time.

Screenshot of the current backup files attached

The SQL commands being run to perform the backups are:

For full:
BACKUP DATABASE &lt;DBName&gt; TO DISK = &lt;Path&gt; WITH INIT;

For diff:
BACKUP DATABASE &lt;DBName&gt; TO DISK = &lt;Path&gt; WITH DIFFERENTIAL, INIT

Any help would be greatly appreciated.
After further digging, it appears someone had left a transaction open, which was the underlying cause of this issue.

I managed to find there was a transaction open by running:

SELECT * FROM sys.sysprocesses WHERE open_tran = 1


I then used this article https://blog.sqlauthority.com/2010/10/01/sql-server-get-query-running-in-session/ which provided the below SQL to find what was being run.

DECLARE @sqltext VARBINARY(128)
SELECT @sqltext = sql_handle
FROM sys.sysprocesses
WHERE spid = (YourSessionID)
SELECT TEXT
FROM sys.dm_exec_sql_text(@sqltext)
GO


It appeared to be an empty transaction that didn't have any active SQL running so I was able to restart the SQL process to resolve this.