Installing (French) language pack causes Event ID 6464 UPS issue and access to check timer jobs errors

I’ve just installed the French language pack to carry out some testing for page variations (http://technet.microsoft.com/en-us/library/cc262404.aspx).

I followed the process of installing the language pack and then running the wizard (PSConfig) and all seem to run well apart from I was guessing it ran well as frustratingly the wizard is all in French and my French is a little rusty to say the least.

My next step was to setup a variation within SharePoint and all went well, apart from the fact that the timer job for variations runs between midnight and 3 am so I went to manually run the timer job and was presented with the friendly error message ‘Operation is not valid due to the current state of the object

Capture 

Ok so next step was to do the usual, IISRESET then reboot then re-run PSConfig. Still no joy, so next step was to check the logs and event viewer which showed the error and was referring to the User Profile Application Language Synchronization Job.

Capture2

Referring back to my earlier comment about my French translation it seems that it did not complete the install properly thanks to @givenscj for his suggestion that the language may have failed (I have to say it is strange that just because I’m installing a French language pack it is assumed I as the admin know French which clearly I don't! So this didn't help the matter!).

I reinstalled the language pack to no avail and still had the same issues UPS error and couldn't check my timer job.

Again ran IISRESET and still no luck. So as I was working on a test environment I was feeling ruthless and deleted the User Profile Service and again no joy.

Brian Lalancette suggested forcing a PSConfig with the command:

PSConfig.exe -cmd upgrade -inplace v2v -passphrase <FarmPassphrase> -force -wait

This popped up a VS2010 debug window.

image

Not being a developer this wasn’t of great use to me so the last option I had left was to update the farm to December 2010 cumulative update (http://support.microsoft.com/kb/2459257).

I attempted to revert back to my original install but to no avail. My next step was to check the ULS logs and found the following entry:

System.InvalidOperationException: Operation is not valid due to the current state of the object.  
at Microsoft.Office.Server.Administration.UserProfileApplicationJob.get_UserProfileApplication()   
at Microsoft.Office.Server.Administration.UserProfileApplicationJob.get_DisplayName()   
at Microsoft.SharePoint.ApplicationPages.JobDefinitionsDataSourceView.AddRow(SPJobDefinition jd, DataTable table, DataSourceSelectArguments selectArguments)   
at Microsoft.SharePoint.ApplicationPages.JobDefinitionsDataSourceView.AddService(SPService service, DataTable table, DataSourceSelectArguments selectArguments)   
at Microsoft.SharePoint.ApplicationPages.JobDefinitionsDataSourceView.AddFarm(SPFarm farm, DataTable table, DataSourceSelectArguments selectArguments)   
at Microsoft.SharePoint.WebControls.TimerJobDataSourceView.FillDataTable(DataTable table, DataSourceSelectArguments selectArguments)   
at Microsoft.SharePoint.WebControls.DataTableDataSourceView.Select(DataSourceSelectArguments selectArguments)   
at Microsoft.SharePoint.WebControls.AdministrationDataSourceView.ExecuteSelect(DataSourceSelectArguments arguments)   
at System.Web.UI.DataSourceView.Select(DataSourceSelectArguments arguments, DataSourceViewSelectCallback callback)   
at System.Web.UI.WebControls.DataBoundControl.PerformSelect()   
at System.Web.UI.WebControls.BaseDataBoundControl.EnsureDataBound()   
at System.Web.UI.WebControls.CompositeDataBoundControl.CreateChildControls()   
at System.Web.UI.Control.EnsureChildControls()   
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)

I found the TechNet forum below where someone else has experienced this issue but with no luck resolving this: http://social.technet.microsoft.com/Forums/en-US/sharepoint2010setup/thread/45cd502a-580d-49ab-85bb-e5ab10294474.

If anyone has any ideas or has resolved this issue feel free to post a comment.