This post describes a peculiar problem one customer had. In their intranet, all of their employees had a managed metadata -typed managed property in SharePoint User Profile Service and a mapping from that property to RefinableString31. RefinableString31, in turn, was used on Search DisplayTemplates to show the textual value of the managed metadata field.
The mapping and displaying the values worked beautifully – except for one user. Her people search results profile wouldn’t show her office address no matter how long the customer waited for the content to be reindexed, even though the data did exist in Active Directory.
The DisplayTemplate was custom-made, and the relevant part is shown below.
What was even more bizarre was that for other users the value was there – nothing strange there! It was just this one user with the issue!
Now, quite a few things were already working, so that narrows the scope of the investigation down a lot:
- Mapping was okay, because other people search results had the value for RefinableString31.
- User Profile Service had the value for the managed metadata field… So the profile in the AD and the synchronization was apparently working.
- Indexing had gone through, because other fields had values and other users had values.
What was left, was some kind of obscure problem in search crawling, and boy would that not be a surprise at all. In on-prem situations this is pretty straightforward to fix – launch a new full crawl for the content source where mysites/people directory is, and before or later it’ll finish and you’ll have your data. In SharePoint Online you can’t do that, so we had to figure out another way.
Quick googling revealed that SharePoint Online does not do full crawls. Instead it reindexes all user profiles that have values that have changed at the next time incremental crawl runs. This, typically, can be anything from 2-8 hours depending on farm load. So, quite simply, I accessed the problematic user’s profile in SharePoint Online User Profile Service (found from an URL similar to https://<tenant>-admin.sharepoint.com/_layouts/15/tenantprofileadmin/ProfMngr.aspx), edited About me -field by adding one space to the end (this was to make sure something had actually changed) and saved the profile.
The next day the profile was fine. Yay!
In case it wasn’t, the next thing would’ve been to use Mikael Svenson’s SPO-Trigger-Reindex -Powershell Script to force SharePoint Online to reindex the profile. That is one darn useful script, by the way.
Some further reading
Latest posts by Antti K. Koskela (see all)
- How to fix an Office Group with no Owners - November 14, 2018
- Help! My “Content and Structure” page in SharePoint Online is gone! - November 7, 2018
- Thanks for coming to my session at SPS New England 10/20 ! - October 20, 2018
- Speaking at SPS New England on 10/20! - October 17, 2018