When performing an upgrade to Enterprise Vault using the EVDatabaseUpgrader utility a timeout occurs while processing a particular database

book

Article ID: 100014984

calendar_today

Updated On:

Description

Error Message

The following Symantec Enterprise Vault event occurs when a Vault Store database upgrade timeouts:

Log Name: Symantec Enterprise Vault
Source: Enterprise Vault 
Event ID: 41533
Task Category: Database Upgrader
Level: Error
Description:
Failed to upgrade VaultStore database. Database:[EVVSVaultStore1_1] Server:[SQLserver\SQLintance].Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding.

When running the EVDatabaseUpgrader utility the following Exception will occur:

EXCEPTION: Failed to upgrade VaultStore database. Database:[EVVSVaultStore1_1] Server:[SQLServer\SQLinstance].
Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding.

A Dtrace of the EVDatabaseUpgrader process will show:

599    06:10:05.228     [2552]    (EVDatabaseUpgrader)        EV-H    {VAULTSTOREDB.EN_US} Exception: Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding. Info:Failed to upgrade VaultStore database. Database:[EVVSVaultStore1_1] Server:[SQLServer\SQLinstance]. Diag:Num:-2 State:0 Sev:11 Svr:SQLServer\SQLinstance Proc: Line:0 Type:System.Data.SqlClient.SqlException ST:   at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
   at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
   at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
   at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)
   at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)
   at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
   at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
   at Symantec.EnterpriseVault.EVDatabaseUpgrader.VaultStoreDatabaseAccessor.AggregateContentProviderData()
   at Symantec.EnterpriseVault.EVDatabaseUpgrader.VaultStoreDB.AggregateContentProviderData()
   at Symantec.EnterpriseVault.EVDatabaseUpgrader.VaultStoreDB.DoMinimumSupportedUpdates(ScriptExecutor scriptExecutor, DBSchema& vaultStoreDBSchemaVersion)
   at Symantec.EnterpriseVault.EVDatabaseUpgrader.VaultStoreDB.UpdateVaultStoreDB() Inner:None
600    06:10:05.244     [2552]    (EVDatabaseUpgrader)        EV~E    |Event ID: 41533 EVDatabaseUpgrader failed.|Failed to upgrade VaultStore database. Database:[EVVSVaultStore1_1] Server:[SQLServer\SQLinstance].|Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding.

Cause

One possible cause is a large number of pending items in the JournalArchive and WatchFile tables within the particular Vault Store database, which causes the database upgrade to take longer than the default timeout of 2 minutes to complete.

 

Resolution

For Enterprise Vault version 12.2 and before:

Add the following entries to the EVDatabaseUpgrader.exe.config file, this file is located in the Enterprise Vault installation location (default: C:\Program Files (x86)\Enterprise Vault); adjust the SQLCommandTimeoutSeconds value as needed we are increasing this from the default 2 minutes to 10 minutes however if this is not enough increase the value in increments of 300 seconds (5 minutes):



The above section needs to be added directly after but before .

For Enterprise Vault version 12.3 and after the parameters have been added to the PowerShell cmd:

Start-EVDatabaseUpgrade [-CommandTimeoutSeconds ] [-ScriptTimeoutSeconds ] []

Parameters

Table: Start-EVDatabaseUpgrade parameters

Parameter

Description

-CommandTimeoutSeconds

Specifies a timeout in seconds for this cmdlet to execute SQL Server commands, such as SQL statements and stored procedures. The default is 210 seconds. Must be a non-zero value.

-ScriptTimeoutSeconds

Specifies a timeout in seconds for this cmdlet to execute scripts on the SQL Server. The default is 7200 seconds. Must be a non-zero value.

Examples

  • Start-EVDatabaseUpgrade

    Starts an upgrade of Enterprise Vault databases, and returns the status of each.

  • Start-EVDatabaseUpgrade -CommandTimeoutSeconds 420 -ScriptTimeoutSeconds 14400

    Gives the cmdlet more time to execute SQL Server commands and scripts by doubling the timeout values for these activities.

 

 

 

Issue/Introduction

While running the EVDatabaseUpgrader utility a time-out occurs while performing the upgrade of an Enterprise Vault (EV) database