Restarting Audience Compilation

By Michael Doyle posted 11-05-2010 00:46

  

This is going to be a short but extremely useful post about how to get your Audiences compiled if it gets stuck. If your audience compilation gets stuck it is really hard to get it going again. Restarting the User Profile Service won’t do it. Trying to start it via the Central Admin UI won’t do it. Short of recreating the User Profile Service you are going to have to dive into your SQL Server and run an ORGLE stored procedure called orgle_job_stop. For some serious and disturbing laughs look up orgle on the internet. Just be prepared for some disturbing images J

This stored procedure is found in the User Profile Service database (probably Profile DB) and you will need the partition ID (a GUID) which can be found in a lot of places but I simply open the UserProfileValue table and look at any record. Copy that value so you can run the stored procedure

For example:

Execute orgle_job_stop ‘0C37852B-34D0-418E-91C6-2AC25AF4BE5B’, NULL

The NULL is required. I hope you never have to run this, but if you do you will be very thankful. Once you have run this you can restart your audience compilation and it should finish in less time than it took to run this stored procedure.



#SharePoint #sharepoint #UserProfiles #Audiences
1 comment
636 views

Comments

10-29-2012 09:21

Although the fix above works, its not the best approach. This is because you are working directly with the SharePoint database. Doing so can invalidate your support contract.
This is a safer approach:
1) Run this SharePoint management command as administrator:
$runjob=[Microsoft.Office.Server.Audience.AudienceJob]::RunAudienceJob($args);
2) From the results determine The Guid of the job.
3) In the same window (it won’t work if you close the window) run:
Audiencejob.exe THEGUID 0 #stops compilation
4) Then run:
Audiencejob.exe THEGUID 1 #starts compilation
5) Issue should be resolved.