Challenge
Failures occur during the File to tape or Backup to tape jobs. The jobname.log shows error messages similar to:"error: The request could not be performed because of an I/O device error"
"error: Tape fatal error.\nThe I/O bus was reset"
"error: Tape fatal error.\nThe I/O bus was reset"
Cause
Depending on the type of connection, controller or library used, periodic status requests may be handled too slow and fill up the queue. As a result, Windows may try to recover by resetting the bus.Solution
For Veeam B&R v7.x:1. Increase the time between status requests by adding following registry entry, and restart the Veeam services:
HKLM\Software\Veeam\Veeam Backup and Replication - create a DWORD "TapeDeviceWatcherTimeoutSec" with a value "300"
2. Additionally you may need to increase storport timeouts by creating a "StorPort" key with entries for all tape devices: HKLM\System\CurrentControlSet\Enum\SCSI\DEVICEID\INSTANCE\Device Parameters\StorPort\
You can get DEVICEID & INSTANCE with the following PowerShell command: gwmi -class win32_tapedrive
- create a DWORD "BusyRetryCount" with the value "1000" (DEC)
- create a DWORD "BusyPauseTime" with the value "1000" (DEC)
- create a DWORD "BusyTimeoutCount" with the value "5000" (DEC)
3. Reboot the server, for StorPort settings to be applied
HKLM\Software\Veeam\Veeam Backup and Replication - create a DWORD "TapeDeviceWatcherTimeoutSec" with a value "300"
2. Additionally you may need to increase storport timeouts by creating a "StorPort" key with entries for all tape devices: HKLM\System\CurrentControlSet\Enum\SCSI\DEVICEID\INSTANCE\Device Parameters\StorPort\
You can get DEVICEID & INSTANCE with the following PowerShell command: gwmi -class win32_tapedrive
- create a DWORD "BusyRetryCount" with the value "1000" (DEC)
- create a DWORD "BusyPauseTime" with the value "1000" (DEC)
- create a DWORD "BusyTimeoutCount" with the value "5000" (DEC)
3. Reboot the server, for StorPort settings to be applied
For Veeam B&R v8.x or v9.x:
1.Increase storport timeouts by creating a "StorPort" key on the tape server with entries for all tape devices: HKLM\System\CurrentControlSet\Enum\SCSI\DEVICEID\INSTANCE\Device Parameters\StorPort\
You can get DEVICEID & INSTANCE with the following PowerShell command: gwmi -class win32_tapedrive
- create a DWORD "BusyRetryCount" with the value "1000" (DEC)
- create a DWORD "BusyPauseTime" with the value "1000" (DEC)
- create a DWORD "BusyTimeoutCount" with the value "5000" (DEC)
2. Reboot the tape server, for StorPort settings to be applied
You can get DEVICEID & INSTANCE with the following PowerShell command: gwmi -class win32_tapedrive
- create a DWORD "BusyRetryCount" with the value "1000" (DEC)
- create a DWORD "BusyPauseTime" with the value "1000" (DEC)
- create a DWORD "BusyTimeoutCount" with the value "5000" (DEC)
2. Reboot the tape server, for StorPort settings to be applied