views:

206

answers:

2

We are using in our company Telligent Community Server 2007.1 SP2, and we are having a LOT of timeouts from this tool, it is just not satisfying anybody.

Our CS was 2007 SP1, having many timeouts. So a person from Telligent suport suggested an upgrade to the current version, 2007.1 SP2. We did it, actually I think it is worse than before.

The website is published on a dedicated server, we have another server dedicated to forum database. Both computers have processing and memory resources available. Application pool is allright, database timeout is fairly big actually (300s)...

We do use enterprise search, since we have around 2.5 million posts. Database was reindexed (table data) and recompiled (procs) today.

This message is shown, when someone tries to click on "Forum":

[SqlException (0x80131904): Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.]
System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) +1950890 System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) +4846875 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) +194
System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) +2392
System.Data.SqlClient.SqlDataReader.ConsumeMetaData() +33 System.Data.SqlClient.SqlDataReader.get_MetaData() +83 System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) +297
System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async) +954 System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result) +162
System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method) +32 System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method) +141
System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior) +70
CommunityServer.Data.ForumsSqlDataProvider.GetThreads(ForumThreadQuery query) in C:\Repositorio\Forum\trunk\Data Providers\SqlDataProvider\ForumsSqlDataProvider.cs:960 CommunityServer.Discussions.Components.Threads.GetThreads(ForumThreadQuery query) in C:\Repositorio\Forum\trunk\Forums\Components\Threads.cs:85 CommunityServer.Discussions.Controls.ThreadList.get_DataSource() in C:\Repositorio\Forum\trunk\Forums\Controls\Thread\ThreadList.cs:83 System.Web.UI.WebControls.Repeater.ConnectToDataSourceView() +183 System.Web.UI.WebControls.Repeater.OnLoad(EventArgs e) +19
CommunityServer.Controls.PreTemplatedWrappedRepeaterBase.OnLoad(EventArgs e) in C:\Repositorio\Forum\trunk\Controls\Base\PreTemplatedWrappedRepeaterBase.cs:90 System.Web.UI.Control.LoadRecursive() +50 System.Web.UI.Control.LoadRecursive() +141 System.Web.UI.Control.LoadRecursive() +141 System.Web.UI.Control.LoadRecursive() +141 System.Web.UI.Control.LoadRecursive() +141 System.Web.UI.Control.LoadRecursive() +141 System.Web.UI.Control.LoadRecursive() +141 System.Web.UI.Control.LoadRecursive() +141 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +627

Have anyone ever had this kind of problem with CS?

A: 

We run a version of CS that is close to this at my company. I have not had problems like that with it. However we don't have high usage. By looking at the stack trace id say its having a problem parsing out the return from the SQL call to load a Forum thread? What if you turn on SQL Profiler and watch what query is being executed that is causing the problem. Then try to run that query manually in the query editor window and see if SQL says anything, possibly a bad index that needs to be rebuilt.

Mcbeev
A: 

We resolved it creating a lot of new indexes, adding (nolock) to critical queries and doing some cleanup on old data.

Victor Rodrigues