Restores of large Microsoft SQL server databases using the NetBackup for Microsoft SQL Server database agent fail before jobs start reading data from storage

Article: 100003049
Last Published: 2013-11-11
Ratings: 1 0
Product(s): NetBackup & Alta Data Protection

Problem

Restores of large Microsoft SQL server databases using the NetBackup for Microsoft SQL Server database agent fail before jobs start reading data from storage.

Error Message

Status Code 41: network connection timed out

Cause

With Microsoft SQL server, the restore process starts by having SQL Server allocate all of the data files that will be used for the SQL Database.  SQL Server then writes zeroes to all of these files. If this is a very large SQL database, this process can take a significant amount of time. Only after Microsoft SQL Server finishes writing zeros will it start requesting data from the NetBackup database agent. Generally there is no appearance of activity until Microsoft SQL Server is ready to start requesting data to recover the SQL database.

If the NetBackup "Client Read Timeout" for that client is not large enough, the restore processes will have already timed out before the SQL Server requests the first byte of data.

For example, with a 2.4 terabyte SQL database, if the SQL server can write the zeroes at 60MBps, it will take at least 12 hours to zero out the database files. In this example, the Client Read Timeout for the client with the SQL database would need to be set to at least 16 hours, and probably more, to make sure that the SQL database had sufficient time to zero out the files.

 

Solution

Increase the value of the Client Read Timeout on the media server servicing the restore.
 
The appropriate value for the Client Read Timeout depends on several factors, but the primary factor is the speed at which SQL Server can write data to disk.  One method to determine how fast SQL can zero out the disk would be to use the Performance Monitor. Monitor the disk bytes written to all of the disks used to hold the SQL database and determine the average speed of the writes to disk. Then use this value and the size of the SQL database to determine a reasonable value for the Client Read Timeout.  

In general, the Client Read Timeout value can be set to twice the time required for the backup, and the restore should succeed.  If the backup took two hours, set the Client Read Timeout value to four hours (14400 seconds).  
 
 
 

 

Was this content helpful?