Horkay Blog
The postings on this site are my own and do not represent my Employer's positions, advice or strategies.
Monday, 20 February 2017

Troubleshooting tlog backup failure in always-on environment, backups on read-only / passive node.

This was an odd failure, as it occurred 4 or 5 times, right after the full backup, than it would "resolve itself", but the next day, right after the full backup, it would happen again, repeating itself daily in this fashion.

Tracked this back to an issue with the disk, where it seems we had a 605 error during a checkdb, that also "resolved itself" and the next days checkdb was good, so no action was taken, but this is what started the chain of events.

Eventually I did find someone with a similar issue that a system spid was hung, I resolved my issue by rebooting the environment(s).  Link and text below my error messages.

Log backup for database "{db name here}" on secondary replica created backup
files successfully but could not ensure that a backup point has been
committed on the primary.  This is an informational message only.
Preserve this log backup along with the other log backups of this
database.          [SQLSTATE 01000]

Msg 35250, Sev 16, State 11, Line 39 : The connection to the primary
replica is not active.  The command cannot be processed. [SQLSTATE 42000]
Msg 3013, Sev 16, State 1, Line 39 : BACKUP LOG is terminating abnormally.
[SQLSTATE 42000]

The operating system returned error 665(The requested operation could not
be completed due to a file system limitation) to SQL Server during a write
at offset 0x00001cb940e000 in file
'{drive letter\db.ndf file}:MSSQL_DBCC12'. Additional
messages in the SQL Server error log and system event log may provide more
detail. This is a severe system-level error condition that threatens
database integrity and must be corrected immediately. Complete a full
database consistency check (DBCC CHECKDB). This error can be caused by
many factors; for more information, see SQL Server Books Online




This error surprised me when it showed up in the error log so I decided to dig into it a bit more.

“Log backup for database “MyDB” on secondary replica created backup files successfully but could not ensure that a backup point has been committed on the primary.  This is an informational message only. 

Preserve this log backup along with the other log backups of this database.”

The message appears on the secondary replica, where the backup was taken, and indicates one of two possible conditions.  To understand the conditions it helps to understand the state of the backup operation.

The error occurs after the point where the backup was successfully streamed to the backup media. The first concern I had was “is my backup valid” and the answer is YES!  The backup has been written to the backup media properly.

Now the secondary sends a message to the primary to update the backup position in the database.  If this message fails the error is logged.

1. The secondary sends the completed message to the primary.  The primary records the backup position but for some reason fails to respond the secondary (I.E. lost network connection.)   In this case the next backup will pick up were the current backup completed.

2. The secondary sends the completed message to the primary.  The primary never receives the message or fails in some way before it can record the current backup position.  (I.E. network, primary shut down, etc…).  In this case the next backup will acquire the same information as the last log backup and any additional log records generated.

As you can see the message may be a bit alarming but it is harmless to your backup strategy other than the fact that you might get extra log records in a backup but that can be properly handled during restore.  NO DATA LOSS!


Diane Sithoo says:

I'm seeing a third condition, trying to perform native log backups, where for some reason, although the backup has been written properly to the backup media, all further attempts to backup fail with Msg 35250, Level 16, State 11, "The connection to the primary replica is not active.  The command cannot be processed.".  This is then followed by Msg 3013, Level 16, State 1, "BACKUP LOG is terminating abnormally."

So far, even in dealing with MS support, there is no resolution to this.  What happens is that at that point, the background process is blocked.  When I use DMV view sys.dm_exec_requests, it shows as HADR BACKUP LOCK HOLDER.  The wait type on the blocked process is LCK_M_U and the wait resource is DATABASE: <id> [BULKOP_BACKUP_LOG].  On the blocking process, the wait type is HADR_BACKUP_QUEUE.  Until I either restart SQL Server Agent on the secondary, or run DBCC STACKDUMP, it continues to block.

Monday, 20 February 2017 12:33:34 (Central Standard Time, UTC-06:00) | Comments [0] | SQL Server | Web_Blog#
Popular Posts
Unpatched Vulnerabiltiy discovered ...
Spring Fornicator brewed...
SQL Server Security, not where it n...
DTA - Failed to initialize MSDB dat...
Check the Uptime of a Windows Serve...
Recent Posts
June, 2017 (2)
May, 2017 (2)
April, 2017 (2)
March, 2017 (1)
February, 2017 (1)
December, 2016 (2)
October, 2016 (2)
September, 2016 (1)
August, 2016 (1)
July, 2016 (1)
March, 2016 (2)
February, 2016 (3)
December, 2015 (4)
November, 2015 (6)
September, 2015 (1)
August, 2015 (2)
July, 2015 (1)
March, 2015 (2)
January, 2015 (1)
December, 2014 (3)
November, 2014 (1)
July, 2014 (2)
June, 2014 (2)
May, 2014 (3)
April, 2014 (3)
March, 2014 (1)
December, 2013 (1)
October, 2013 (1)
August, 2013 (1)
July, 2013 (1)
June, 2013 (2)
May, 2013 (1)
March, 2013 (3)
February, 2013 (3)
January, 2013 (1)
December, 2012 (3)
November, 2012 (1)
October, 2012 (1)
September, 2012 (1)
August, 2012 (1)
July, 2012 (4)
June, 2012 (3)
April, 2012 (1)
March, 2012 (3)
February, 2012 (3)
January, 2012 (4)
December, 2011 (3)
October, 2011 (2)
September, 2011 (2)
August, 2011 (8)
July, 2011 (4)
June, 2011 (3)
May, 2011 (3)
April, 2011 (1)
March, 2011 (2)
February, 2011 (3)
January, 2011 (1)
September, 2010 (1)
August, 2010 (2)
May, 2010 (2)
April, 2010 (3)
March, 2010 (1)
February, 2010 (4)
January, 2010 (1)
December, 2009 (3)
November, 2009 (2)
October, 2009 (2)
September, 2009 (5)
August, 2009 (4)
July, 2009 (8)
June, 2009 (2)
May, 2009 (3)
April, 2009 (9)
March, 2009 (6)
February, 2009 (3)
January, 2009 (8)
December, 2008 (8)
November, 2008 (4)
October, 2008 (14)
September, 2008 (10)
August, 2008 (7)
July, 2008 (7)
June, 2008 (11)
May, 2008 (14)
April, 2008 (12)
March, 2008 (17)
February, 2008 (10)
January, 2008 (13)
December, 2007 (7)
November, 2007 (8)
Admin Login
Sign In