BackupMedium::ReportIoError: write failure on backup device 'VDI_....'
Operating System error 1453 (Insufficient quota to complete the requested service.
BackupVirtualdeviceFile::RequestDurableMedia: Flush failure on backup device 'VDI...' Operation system error 995 (The I/O operation has been aborted because either a thread exit or an application request.)
An error message, similar to the following may be logged in the SQL Server error log:
WARNING: Failed to reserve contiguous memory of Size=<var><allocation_size></var>. ... Dynamic Memory Manager: Stolen=xx OS Reserved=<var><reserved pages></var>OS Committed=<var><committed pages></var>OS In Use=<var><in use pages></var>
The Application Error log may contain a similar warning or error:
03/16/2009 9:47:54 AM: Thread 0 error:
Error 620: Error writing to backup file(s).
Process terminated unexpectedly. Error code: -21329834860
03/16/2009 2:17:54 AM: Warning 210: Thread 0 warning:
Warning 210: Error writing to backup file: <Path to the backup file>. For example \\Server1\backups\DB1_Full_20090316098022.bak
Warning: System error 1453 (Insufficient quota to complete the requested service)
03/16/2009 2:17:54 AM:
SQL error 3013: SQL error 3013: BACKUP DATABASE is terminating abnormally.
SQL error 3271: SQL error 3271: A nonrecoverable I/O error occurred on file "SQLBACKUP_31594813-A10D-4207-8791-B9976CE33BDC:" 995(The I/O operation has been aborted because of either a thread exit or an application request.).
This error may appear especially in Windows 2003 SP3. The Network can handle over 4 Kbytes, but SQL Server may be configured with limitations.
This error can occur when SQL Server 2005 consumes 50% of the memory that is configured for use with SQL Server. At this point, the Windows operating system may begin to page SQL Server's working set to disk. When this happens, SQL Server performance is severely degraded and it is possible that the server will not have enough memory to service the Virtual Device requests from SQL Backup.
In order to prevent paging of SQL Server's working set, the 'Lock Pages in Memory' user right can be applied to the account running the SQL Server service.
In order to prevent paging of SQL Server's working set, the 'Lock Pages in Memory' user right can be applied to the account running the SQL Server service:
1. Click Start, click Run, type gpedit.msc, and then click OK. The Group Policy dialog box appears.
2. Expand Computer Configuration, and then expand Windows Settings.
3. Expand Security Settings, and then expand Local Policies.
4. Click User Rights Assignment, and then double-click Lock pages in memory.
5. In the Local Security Policy Setting dialog box, click Add User or Group.
6. In the Select Users or Groups dialog box, add the account that has permission to run the Sqlservr.exe file, and then click OK.
7. Close the Group Policy dialog box.
8. Restart the SQL Server service.
Please note that on 64-bit editions of SQL Server, only the Enterprise Edition can take advantage of this user right.
Setting the SQL Server's initial 'max server memory' to a lower value can also have a positive effect by reducing the likelihood that Windows will begin to page SQL Server's working set.
Upgrading to SQL Server 2008 also reduces the chances of this error occurring because of improvements in the memory management algorithms.
Adjust the max transfer size, which will reduce the network packet size. Note that the default @maxtransfersize in Litespeed's backup script is 1 Mb (1048576 Kb). Reduce the size to 524288 Kb, which is half the default setting, then perform the backup again. The minimum max transfer size is 65536KB
Compression level should be restricted to 0,1,2 and if backup file is striped, the number of stripes may be reduced to limit simultaneous processes.
To resolve this problem, specify a network packet size that is smaller than 8,060 bytes. 4096 Bytes will solve the issue in most cases.