After installing the May 2018 CU on a SharePoint 2013 Farm the User Profile Synchronization Service (UPS) was stuck on starting.
This farm had not had any CUs applied for a year.
Starting the Sync service should upgrade the related databases and service as part of the provisioning process.
In my case the Sync service would get stuck on starting even after a reboot of the App server.
What I tried
What worked
Unprovision the synchronization service
Delete Synchronization Provisioning Timer Jobs
Set Timer Service Instances Online
The Order that Worked
When trying to provision the Sync service the ULS logs a whole lot of Upgrade events.
No ILM Configuration Steps are logged to the ULS like what’s expected.
Below includes a couple of things that are rarely blogged about.
Get-SPServiceInstance |?{$_.TypeName -like "user*"} | Select TypeName, Server, Status, ID
$srvc = Get-SPServiceInstance *ID of provisioning service* $srvc.Unprovision()
Get-SPTimerJob | ?{$_.Name -like "*profile*"} | Select name
If you see the two highlighted jobs above are created during the provisioning or unprovisioning process.
Delete them
$tj = Get-SPTimerJob ProfileSynchronizationSetupJob $tj.Delete() $tj = Get-SPTimerJob ProfileSynchronizationUnprovisionJob $tj.Delete()
Ensure that the Timer Service Instances are all online.
This is different to the timer service services.
$farm = Get-SPFarm $farm.TimerService.Instances
If there are instances that are not online update them as follows:
$disabledTimers = $farm.TimerService.Instances | where {$_.Status -ne "Online"} foreach ($timer in $disabledTimers) { $timer.Status = [Microsoft.SharePoint.Administration.SPObjectStatus]::Online $timer.Update() }
With the above steps completed provisioning the Sync service failed for me again so I Worked through the below order to get it working.
– Deleted the User Profile Service Application (UPSA) again
– Restarted Timer Job Services
– Recreated UPSA with a new sync DB
– Started the User Profile Service on the app server
– Ensured correct permissions were set on the UPS
– Deleted stuck or provisioning timer jobs
– Cleared timer cache
– Re-checked timer instances were online
– Rechecked all settings and services
– Started sync service
The sync service started!
I re-setup the AD Sync connection and completed a full sync.
If you did recreate the UPSA make sure that you disable the My Site Cleanup Timer job, failure to do so will result in your existing My site Site Collections being deleted.
This is due to the new Sync Connection. After a full sync it would mark all previous profiles to be deleted, and eventually the timer Job will delete the Site Collections.
Once you have performed a number of syncs this should be OK to enable again.
0 Comments
Mate, well done on finding a resolution to this issue and explaining it in great detail. I also experienced this issue after a cumulative update install and nothing worked….and I mean nothing (reboot, restart, recreate). I think my issue was with one of the Timer Instances being disabled. I followed all your steps and it worked first time. Much appreciated for this information.
Sending you an internet beer for this – wish I’d found it sooner! My client had a Timer Service Instance that was Disabled. It’s so hard to diagnose this because the job to start the UPSS just disappears into a black hole and no errors get logged! Grr! Thanks dude!
You’re welcome guys. I know the frustration of trying to find these solutions out there, but they’re not often blogged enough about.