onsdag 26 juni 2013

Failed to run flow Microsoft.CustomDictionaryDeployment

I've been stuck on a petty search-related issue in SharePoint 2013 for a while now, and FINALLY solved the shit!

You see the following failed timer jobs in Central Admin:

 







Eventlog is spammed every 10 minutes:


The Execute method of job definition Microsoft.Office.Server.Search.Administration.CustomDictionaryDeploymentJobDefinition (ID 5a7f11db-d042-4051-b52c-dd28b4bb5dca) threw an exception. More information is included below.

Failed to run flow Microsoft.CustomDictionaryDeployment. Correlation Id: 521b299c-baf4-d067-82a7-d6b3f1c19aef.

ULS logs shows the following error:
Information      Custom dictionary deployment timer job started. SearchComponent: OWSTIMER.EXE, SearchServiceApplication: {f3303f37-5871-470c-8dd1-6a22d31998f0}.    6a1c299c-9afa-d067-82a7-d7a23f3bb19d

Medium      Found settings: Dictionaries last checked for changes 01/01/1754 00:00:00    6a1c299c-9afa-d067-82a7-d7a23f3bb19d

Medium      WcfSendRequest: RemoteAddress: 'http://server:32843/2522386c09e545599461de90989c02b9/MetadataWebService.svc' Channel: 'Microsoft.SharePoint.Taxonomy.IMetadataWebServiceApplication' Action: 'http://schemas.microsoft.com/sharepoint/taxonomy/soap/IDataAccessReadOnly/GetChangedTermSets' MessageId: 'urn:uuid:b1c14f44-c081-4a11-89f1-ed9fcb379b11'    6a1c299c-9afa-d067-82a7-d7a23f3bb19d

Information    Dictionary deployment started. SearchComponent: OWSTIMER.EXE, CorrelationId: e77d30dd-a7cd-4708-8743-81011e7cf57b, SearchServiceApplication: {f3303f37-5871-470c-8dd1-6a22d31998f0}, DictionaryName: Microsoft.UserDictionaries.EntityExtraction.Companies.Inclusions, TermSetId: c866ca65-f095-4a16-9249-028d500f7703, FlowId: {34e1f2d1-b957-4a7b-9ba9-e80cc73c926e}, FlowName: Microsoft.CustomDictionaryDeployment    6a1c299c-9afa-d067-82a7-d7a23f3bb19d

Warning     Dictionary deployment failed. SearchComponent: OWSTIMER.EXE, CorrelationId: e77d30dd-a7cd-4708-8743-81011e7cf57b, SearchServiceApplication: {f3303f37-5871-470c-8dd1-6a22d31998f0}, DictionaryName: Microsoft.UserDictionaries.EntityExtraction.Companies.Inclusions, Component:FlowExecution, FailureMessage: Deployment (flow:Microsoft.CustomDictionaryDeployment) for custom dictionary c866ca65-f095-4a16-9249-028d500f7703 did not complete successfully. Flow execution state was: Failed. Failure: Evaluation failure. An evaluation thread threw an exception. (Exception type: Microsoft.Ceres.Evaluation.DataModel.EvaluationException. Exception message: Evaluation failed in operator RepoWriter of type DictionaryRepositoryWriter), Cause: Microsoft.Ceres.ContentEngine.Services.ContentIntegrationEngine.FailC...    6a1c299c-9afa-d067-82a7-d7a23f3bb19d

Warning     ...auseException: Evaluation failed in operator RepoWriter of type DictionaryRepositoryWriter.    6a1c299c-9afa-d067-82a7-d7a23f3bb19d

Warning     Custom dictionary deployment timer job failed. SearchComponent: OWSTIMER.EXE, SearchServiceApplication: {f3303f37-5871-470c-8dd1-6a22d31998f0}, FlowName: Microsoft.CustomDictionaryDeployment, CorrelationId: {6a1c299c-9afa-d067-82a7-d7a23f3bb19d}, Failure: System.InvalidOperationException: Failed to run flow Microsoft.CustomDictionaryDeployment. Correlation Id: e77d30dd-a7cd-4708-8743-81011e7cf57b.     at Microsoft.Office.Server.Search.Administration.CustomDictionaryDeploymentJobDefinition.DoExecute(CtsConnection connection)     at Microsoft.Office.Server.Search.Administration.CustomDictionaryDeploymentJobDefinition.ExecuteTimerJob().    6a1c299c-9afa-d067-82a7-d7a23f3bb19d

Critical    The Execute method of job definition Microsoft.Office.Server.Search.Administration.CustomDictionaryDeploymentJobDefinition (ID 5a7f11db-d042-4051-b52c-dd28b4bb5dca) threw an exception. More information is included below.  Failed to run flow Microsoft.CustomDictionaryDeployment. Correlation Id: 6a1c299c-9afa-d067-82a7-d7a23f3bb19d.    6a1c299c-9afa-d067-82a7-d7a23f3bb19d

Unexpected    Exception stack trace:    at Microsoft.Office.Server.Search.Administration.CustomDictionaryDeploymentJobDefinition.ExecuteTimerJob()     at Microsoft.SharePoint.Administration.SPTimerJobInvokeInternal.Invoke(SPJobDefinition jd, Guid targetInstanceId, Boolean isTimerService, Int32& result)    6a1c299c-9afa-d067-82a7-d7a23f3bb19d

Medium      Leaving Monitored Scope (Timer Job Search Custom Dictionaries Update for Search Application f3303f37-5871-470c-8dd1-6a22d31998f0.). Execution Time=2674.81076505534    6a1c299c-9afa-d067-82a7-d7a23f3bb19d

Solution:
I started the SharePoint Search Host Controller Service on every server in the farm, and suddenly the timer job finished successfully.

My topology:
4 app servers
3 web servers


The SSHC service was not started on web1 and web2, however there are no other search components on those servers... I guess there must be some old info in the configuration db which is looking for info on web1 and 2...
The SSHC service should only be enabled on servers with search components activated as far as I know, so this is really not a good solution.


Also: Make sure you have given your search service account read permission to the Managed Metadata Service Application. Or else you could get errors aswell. See following post:
http://get-sharepoint.com/tag/error/


måndag 3 juni 2013

My Site creation stuck at “We’re almost ready!” - SP2013


After changing the MySite host to a dedicated web app, the user's MySite did no longer get provisioned after visiting the users page.

It turns out that the managed path "personal" was not created automatically, as it is in SP2010.
Here is the solution:
  • Create a new web app
  • Create a site collection at the root using the My Site Host template
  • Assuming you want users’ MySites to be created at http://mySiteHost/personal/[John_Smith], create a Managed Path for the web app. The path should be personal, and the type should be Wildcard Inclusion.
  • In User Profile Service Application, set My Site Host location to http://mySiteHost, and Personal Site Location to personal.
  • Enable Self-Service Site Creation for the web app