Error while creating new issue (Version. 1.2.231)

Topics: Core
Nov 23, 2012 at 6:37 AM
Edited Nov 23, 2012 at 6:40 AM

Hi there,

I just upgrade vom 1.1 to the latest.
While createing a new issue I get an error. At the log this is displayed:

 

System.Web.HttpUnhandledException (0x80004005): Exception of type 'System.Web.HttpUnhandledException' was thrown. ---> System.IndexOutOfRangeException: NotificationCulture
   at System.Data.SqlClient.SqlDataReader.GetOrdinal(String name)
   at BugNET.Providers.DataProviders.SqlDataProvider.GenerateIssueNotificationListFromReader(IDataReader returnData, List`1& issueNotificationList)
   at BugNET.Providers.DataProviders.SqlDataProvider.ExecuteReaderCmd[T](SqlCommand sqlCmd, GenerateListFromReader`1 gcfr, List`1& list)
   at BugNET.Providers.DataProviders.SqlDataProvider.GetIssueNotificationsByIssueId(Int32 issueId)
   at BugNET.BLL.IssueNotificationManager.SendIssueAddNotifications(Int32 issueId)
   at BugNET.Issues.IssueDetail.SaveIssue()
   at BugNET.Issues.IssueDetail.LnkSaveClick(Object sender, EventArgs e)
   at System.Web.UI.WebControls.LinkButton.RaisePostBackEvent(String eventArgument)
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
   at System.Web.UI.Page.HandleError(Exception e)
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
   at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
   at System.Web.HttpContext.InvokeCancellableCallback(WaitCallback callback, Object state)
   at System.Web.UI.Page.LegacyAsyncPageBeginProcessRequest(HttpContext context, AsyncCallback callback, Object extraData)
   at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
   at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

It sounds like a localization issue?
At the Application Settings -> Language,  Application Default is set to "en-US".

Any help will be much appreciated.

Kind regards,

Sörnt

Developer
Nov 23, 2012 at 2:07 PM

It seems like you code is not in synch with the database schema.

How did you install BugNET and did you update the code by doing a manual compile of the source code?

Nov 23, 2012 at 2:14 PM

No.
I remove the old application and copy the new version there (from the .zip that contains the binaries) .
Than I merged the web.config and restarted the App-Pool.

Nov 28, 2012 at 7:31 PM

I experienced the same issue with an upgrade to 1.2.231.0.

It lies with a stored procedure called "BugNet_IssueNotification_GetIssueNotificationsByIssueId" that is missing the following line:

ISNULL(UP.PreferredLocale, @DefaultCulture) AS NotificationCulture

I updated the stored procedure with the contents from the CREATE PROCEDURE that exists in \BugNET_WAP\Providers\DataProviders\SqlDataProvider\BugNet.Schema.SqlDataProvider.sql.

I suspect the best option would be to create a new database containing a new install of 1.2.231.0 and schema diff with your existing database.

Nov 28, 2012 at 8:04 PM

Thanks for the feedback!

Hopefully they didn't change to much. Updateing the schema is 50%, the other 50% will be data moving/converting to new table layouts :-(

Regards,

Sörnt

 

Nov 29, 2012 at 1:28 PM

I created a new database for a fresh install of v.1.2.231.0. I then used this CodePlex schema diff tool (http://opendbiff.codeplex.com/) to compare my upgraded v.1.2.231.0 and the fresh install one.

With the exception of the change in BugNet_IssueNotification_GetIssueNotificationsByIssueId, there were no other changes.

Hope this helps!

Dec 19, 2012 at 10:39 PM

+1 for this issue

 

Recreated the procedure and it works now.  I hope that there's nothing else ;)

Coordinator
Dec 20, 2012 at 7:04 PM
This discussion has been copied to a work item. Click here to go to the work item and continue the discussion.
Feb 21, 2013 at 12:39 AM
Edited Feb 21, 2013 at 12:40 AM
I just upgraded to 1.3 from 1.1 and got the same error.
System.Web.HttpUnhandledException (0x80004005): Exception of type 'System.Web.HttpUnhandledException' was thrown. ---> System.IndexOutOfRangeException: NotificationCulture
   at System.Data.SqlClient.SqlDataReader.GetOrdinal(String name)
   at BugNET.Providers.DataProviders.SqlDataProvider.GenerateIssueNotificationListFromReader(IDataReader returnData, List`1& issueNotificationList)
   at BugNET.Providers.DataProviders.SqlDataProvider.ExecuteReaderCmd[T](SqlCommand sqlCmd, GenerateListFromReader`1 gcfr, List`1& list)
   at BugNET.Providers.DataProviders.SqlDataProvider.GetIssueNotificationsByIssueId(Int32 issueId)
   at BugNET.Issues.UserControls.IssueTabs.GetTabName(String tabName, String tabValue)
   at BugNET.Issues.UserControls.IssueTabs.RefreshTabNames()
   at System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e)
   at System.Web.UI.Control.PreRenderRecursiveInternal()
   at System.Web.UI.Control.PreRenderRecursiveInternal()
   at System.Web.UI.Control.PreRenderRecursiveInternal()
   at System.Web.UI.Control.PreRenderRecursiveInternal()
   at System.Web.UI.Control.PreRenderRecursiveInternal()
   at System.Web.UI.Control.PreRenderRecursiveInternal()
   at System.Web.UI.Control.PreRenderRecursiveInternal()
   at System.Web.UI.Control.PreRenderRecursiveInternal()
   at System.Web.UI.Control.PreRenderRecursiveInternal()
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
   at System.Web.UI.Page.HandleError(Exception e)
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
   at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
   at System.Web.HttpContext.InvokeCancellableCallback(WaitCallback callback, Object state)
   at System.Web.UI.Page.AsyncPageBeginProcessRequest(HttpContext context, AsyncCallback call