Home Home
  login

Gemini Community Support Site

This Gemini community support site can be used to find solutions to product issues. You can log in using Open Id, Google Profile and even Facebook. Feel free to ask a question or browse FAQs and documentation. Product tour videos are also available along with how-to videos demonstrating key Gemini capabilities.




Gemini 5: showing Timeline makes our server unusable

usage
items
api

We use Timeline as a great overview of recent changes. Thank you for that. For most of projects it works for us. Off course there is sorting issue: http://gemini.countersoft.com/project/GEM/2/item/5425 and alignment issue: http://gemini.countersoft.com/project/GEM/2/item/5427 and we hope that at least the firt one will be fixed soon.

We have a problem showing Timeline for one specific project. Gemini doesn't show it, browser waits for an answer from the server. When I look on the server (Windows 2003, IIS6) there is the aspnet_wp.exe proccess in the Task Manager which is eating full of cpu time. So we must kill it to prevent other apps on the server getting slow. This project is specific a bit. We use it for automatically generated crash reports sent by our software. So it is full of issues that are automatically generated via API.

  • There is about 700 issues. Yes, our sw is buggy too ;-)
  • We report crashes to Gemini for a long time, so it is about 100 issues in last 6 months.
  • All of issues have long text and have two attachments.

What we have to check to improve the performance?

stepand76
· 504
stepand76
Replies (17)
helpful
0
not helpful

Is it just the timeline page for this project that is having a problem?


Mark Wing
· 9108
Mark Wing
helpful
0
not helpful

We encountered it only on the Timeline page. This is in the System log:

Index was outside the bounds of the array. mscorlib at System.Text.StringBuilder.get_Chars(Int32 index) at ASP._Page_Views_Reports__ProjectSummaryItem_cshtml.Execute() in c:\www\Gemini\Views\Reports\_ProjectSummaryItem.cshtml:line 103 at System.Web.WebPages.WebPageBase.ExecutePageHierarchy() at System.Web.Mvc.WebViewPage.ExecutePageHierarchy() at System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage) at System.Web.Mvc.RazorView.RenderView(ViewContext viewContext, TextWriter writer, Object instance) at System.Web.Mvc.BuildManagerCompiledView.Render(ViewContext viewContext, TextWriter writer) at Countersoft.Gemini.Infrastructure.BaseController.RenderPartialViewToString(BaseController controller, String viewName, Object model) at Countersoft.Gemini.Controllers.Ajax.AjaxReportsController.GetProjectSummaryByComponent(ReportOptions options) at Countersoft.Gemini.Controllers.Ajax.AjaxReportsController.GetProjectSummaryReport(ReportOptions options) at Countersoft.Gemini.Controllers.Ajax.AjaxReportsController.Get(ReportOptions form) at lambda_method(Closure , ControllerBase , Object[] ) at System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller, Object[] parameters) at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters) at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters) at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass42.<BeginInvokeSynchronousActionMethod>b__41() at System.Web.Mvc.Async.AsyncResultWrapper.<>c__DisplayClass8`1.<BeginSynchronous>b__7(IAsyncResult _) at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult`1.End() at System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult asyncResult) at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass37.<>c__DisplayClass39.<BeginInvokeActionMethodWithFilters>b__33() at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass4f.<InvokeActionMethodFilterAsynchronously>b__49() at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass4f.<InvokeActionMethodFilterAsynchronously>b__49() at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass4f.<InvokeActionMethodFilterAsynchronously>b__49() at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass37.<BeginInvokeActionMethodWithFilters>b__36(IAsyncResult asyncResult) at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult`1.End() at System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethodWithFilters(IAsyncResult asyncResult) at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass25.<>c__DisplayClass2a.<BeginInvokeAction>b__20() at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass25.<BeginInvokeAction>b__22(IAsyncResult asyncResult) at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult`1.End() at System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult) at System.Web.Mvc.Controller.<>c__DisplayClass1d.<BeginExecuteCore>b__18(IAsyncResult asyncResult) at System.Web.Mvc.Async.AsyncResultWrapper.<>c__DisplayClass4.<MakeVoidDelegate>b__3(IAsyncResult ar) at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult`1.End() at System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) at System.Web.Mvc.Async.AsyncResultWrapper.<>c__DisplayClass4.<MakeVoidDelegate>b__3(IAsyncResult ar) at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult`1.End() at System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult) at System.Web.Mvc.Controller.System.Web.Mvc.Async.IAsyncController.EndExecute(IAsyncResult asyncResult) at System.Web.Mvc.MvcHandler.<>c__DisplayClass8.<BeginProcessRequest>b__3(IAsyncResult asyncResult) at System.Web.Mvc.Async.AsyncResultWrapper.<>c__DisplayClass4.<MakeVoidDelegate>b__3(IAsyncResult ar) at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult`1.End() at System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) at System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(IAsyncResult result) at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

stepand76
· 504
stepand76
helpful
0
not helpful

I forgot mentioned that there is no component defined in this project.


stepand76
· 504
stepand76
helpful
0
not helpful

Is it possible to send us a backup of the database (support@countersoft.com)?


Saar Cohen
· 5000
Saar Cohen
helpful
0
not helpful

The database (.mdf file) is about 1,3GB. Anyway I must discuss it within our team, becasue it contains private data.


stepand76
· 504
stepand76
helpful
0
not helpful

Ok, we think we found what the issue might be. Do you have any comments against items in this project?


Saar Cohen
· 5000
Saar Cohen
helpful
0
not helpful

Following query returns 61 rows.

SELECT [commentid]
      ,[userid]
      ,[issueid]
      ,[projectid]
      ,[comment]
      ,[username]
      ,[isclosing]
      ,[visibility]
      ,[created]
      ,[tstamp]
  FROM [gemini].[dbo].[gemini_issuecomments] where projectid=22

stepand76
· 504
stepand76
helpful
0
not helpful

Ok, is it possible to make a change to once cshtml file for a quick test?


Saar Cohen
· 5000
Saar Cohen
helpful
0
not helpful

Now it is OK, users are going to sleep.


stepand76
· 504
stepand76
helpful
0
not helpful

Please open the views\activity\timeline.cshtml and change:

<div class="item-desc">@Countersoft.Foundation.Utility.Helpers.HtmlHelper.ConvertHtmlToText(data.Item.Description).ToMaxMore(250)</div>

To:

<div class="item-desc">@Countersoft.Foundation.Utility.Helpers.HtmlHelper.ConvertHtmlToText(data.Item.Description.ToMaxMore(1000)).ToMaxMore(250)</div>

That should speed it up and reduce the load on the server.


Saar Cohen
· 5000
Saar Cohen
helpful
0
not helpful

It is showing the timeline for 10 minutes and still not finished :-(


stepand76
· 504
stepand76
helpful
0
not helpful

But we can browse Gemini during timeline is generating (it wasn't possible before).


stepand76
· 504
stepand76
helpful
0
not helpful

No exception in the System log (yet).


stepand76
· 504
stepand76
helpful
0
not helpful

Finished. It takes about 15 minutes. Result looks correct.


stepand76
· 504
stepand76
helpful
0
not helpful

Ok, let us know if we could have the database so we can test it our side.


Saar Cohen
· 5000
Saar Cohen
helpful
0
not helpful

OK, thanks for now.


stepand76
· 504
stepand76
helpful
0
not helpful
ANSWER

Fixed in 5.1.5. Thanks.


stepand76
· 504
stepand76