Answer
PROBLEM
When creating a Volume Shadow Copy (VSS) based backup which includes GFI Archiver's VSS components the backup might fail if GFI Archiver fails to connect to the Microsoft SQL server instance for one or more archive stores.Consider the following list of symptoms:
A VSS based backup which includes GFI Archiver fails (with a reference to the GFI MailArchiver VSS Writer)
GFI Archiver VSS debug logging shows all of the error below:
..\GFI\Archiver\VSS\DebugLogs\VssWriter.log
"error ","VssWriter","error: Prepare for snapshot failed - Value does not fall within the expected range."
..\GFI\Archiver\VSS\DebugLogs\ErrorVssWriter.log
"error ","ErrorVssWriter","error: Prepare for snapshot failed.
;message: Value does not fall within the expected range.
;stack trace: at System.Threading.WaitHandle.WaitMultiple(WaitHandle[] waitHandles, Int32 millisecondsTimeout, Boolean exitContext, Boolean WaitAll)
; at System.Threading.WaitHandle.WaitAll(WaitHandle[] waitHandles, Int32 millisecondsTimeout, Boolean exitContext)
; at System.Threading.WaitHandle.WaitAll(WaitHandle[] waitHandles, TimeSpan timeout, Boolean exitContext)
; at GFI.VSS.VssWriter.PrepareSnapshot(Guid snapshotId)
;"
"error ","VssWriter","error: Prepare for snapshot failed - Value does not fall within the expected range."
..\GFI\Archiver\VSS\DebugLogs\ErrorVssWriter.log
"error ","ErrorVssWriter","error: Prepare for snapshot failed.
;message: Value does not fall within the expected range.
;stack trace: at System.Threading.WaitHandle.WaitMultiple(WaitHandle[] waitHandles, Int32 millisecondsTimeout, Boolean exitContext, Boolean WaitAll)
; at System.Threading.WaitHandle.WaitAll(WaitHandle[] waitHandles, Int32 millisecondsTimeout, Boolean exitContext)
; at System.Threading.WaitHandle.WaitAll(WaitHandle[] waitHandles, TimeSpan timeout, Boolean exitContext)
; at GFI.VSS.VssWriter.PrepareSnapshot(Guid snapshotId)
;"
GFI Archiver Store debug logging shows SQL "login failed" errors as shown below around the same time frame:
..\GFI\Archiver\Store\DebugLogs\ManagementProviders.log
"error ","ManagementProviders","Error: (MSSql) Getting Schema Details. Error execute:
;message: Login failed for user '2014 May - Jun_arch_20140501011854'.
;SqlException. Error No: 18456. Error Code: -2146232060. SeverityClass: 14
"error ","ManagementProviders","Error: (MSSql) Getting Schema Details. Error execute:
;message: Login failed for user '2014 May - Jun_arch_20140501011854'.
;SqlException. Error No: 18456. Error Code: -2146232060. SeverityClass: 14
ENVIRONMENT
- GFI Archiver
- Using a Volume Shadow Copy (VSS) backup software
SOLUTION
- Ensure that the debug mode is enabled (..\GFI\Archiver\Enable Debug Logs.bat)
- Reproduce the issue
- Analyze ..\GFI\Archiver\Store\DebugLogs\ManagementProviders.log and identify all logins which fail (based on the example above it would be: 2014 May - Jun_arch_20140501011854 - which belongs to the archive store: 2014 May - Jun)
- Open the GFI Archiver web page
- Navigate to Configuration > Archive Stores
- Highlight the archive store for which a "login failed" error was found
- Click on the Edit button, go through trough the wizard (authenticate against the Microsoft SQL server using SQL authentication and specify the SA account)
- Repeat the previous 2 steps for all archive store for which "login failed" errors were found