Show History Timeout

This forum is now locked, since Gold Support is no longer offered.

Moderator: SourceGear

Locked
kasti
Posts: 108
Joined: Tue Apr 20, 2004 4:21 am
Location: Austria

Show History Timeout

Post by kasti » Thu Jan 10, 2008 4:57 am

Hi,

Using vault 3.5.3

We have got an odd problem. Show history times out for some projects as follows:

----1/10/2008 11:18:45 AM XXXXXXXXXX--XXXXXXXXXXXXXX--SSL Disabled System.Data.SqlClient.SqlException: Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.SqlInternalConnection.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.SqlDataReader.ConsumeMetaData()
at System.Data.SqlClient.SqlDataReader.get_MetaData()
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.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior)
at VaultServiceSQL.VaultSqlSCC.QueryHistory(VaultSqlConn conn, Int32 nUserID, Int32 nRowLimit, Int64 nTxID, VaultHistoryQueryRequest hqr, SqlDataReader& dr) at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.SqlInternalConnection.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.SqlDataReader.ConsumeMetaData()
at System.Data.SqlClient.SqlDataReader.get_MetaData()
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.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior)
at VaultServiceSQL.VaultSqlSCC.QueryHistory(VaultSqlConn conn, Int32 nUserID, Int32 nRowLimit, Int64 nTxID, VaultHistoryQueryRequest hqr, SqlDataReader& dr)


During this time the sql server grinds away at full speed. So I would imagine increasing sql timeout would help. But obviously, there is another problem here.

This only happens on a certain branched project though. So

1) ProjectA show history performance is instant
2) Branch ProjectA to ProjectB

-> ProjectA history performance still great
-> ProjectB history performance times out


What else I tried:

1) Export ProjectA
2) Import as ProjectB
3) -> same performance problem

also:

1) Export ProjectA
2) Import as ProjectA in a new repository
3) -> no performance problem

also:

1) Export ProjectA
2) Import as ProjectB to another existing repository
3) -> performance problem

Thanks,

Herbert.

BTW: there is no other known performance problem for ProjectB (ie checking out etc works fine)

kasti
Posts: 108
Joined: Tue Apr 20, 2004 4:21 am
Location: Austria

Post by kasti » Thu Jan 10, 2008 5:13 am

Forget it: doing a dbreindex and update statistics solved the problem.

Hard to believe that performance can drop so bad that a simple branch can take the show history time from 1 second to timeout at 6 minutes....


Thanks,
Herbert.

Locked