This article applies to a lot of different issues you might be having with your SharePoint-powered site, or even custom functionality like mobile apps using SharePoint’s search index.
I’ll list a few of the situations, which could be caused by these issues, below:
- You’re using Search to show a list of User Profiles with their properties, but it’s showing outdated or missing information
- Your intranet has the classic “Upcoming Birthdays” -webpart (only weather and lunch lists are more classic than that!) This webpart is not showing some of the organization members at all.
- The aforementioned webpart might also show nobody at all.
- You’re searching users on SharePoint’s People Search based on their profile properties, but aren’t getting results, or you get outdated results.
- You have built a mobile application, that shows user profiles based on the information in SharePoint Search index, but this application works errorenously for at least some users.
Reason for the issue
These issues are most of the time caused by an odd glitch in SharePoint’s search indexing. Every now and then, crawler might start ignoring certain properties from certain user profiles.
This is kind of a well-known issue, even though you can’t really know what went wrong. I don’t think anyone really knows 🙂 Luckily, it’s also reasonably easy to fix!
How to fix this?
If you’re on-premises, you might want to check that your indexing component is running, your application servers are not out of memory, your index freshness is good and that there aren’t any errors in general.
You can always start a full crawl for your People Results result source. If that doesn’t help, check out the next steps, as even though they are for SharePoint Online, the basic concept sometimes helps on-premises, too. Just replace “RefinableDate” with whatever Managed Property you want to use, and be sure to configure them on the farm level!
Fixing non-indexed or non-updated properties in the Search Service in SharePoint Online
In SharePoint Online, there aren’t that many things you can do. Setting crawl schedule, running a full crawl – all of that is out of your hands! And that’s often a good thing, because dealing with some of the search issues that SharePoint Server might have, are quite frankly sometimes very painful.
Let’s presume that you’re using any functionality which shows users birthdays, mapping the People:SPS-Birthday property to any RefinableDate -property. However, this is not quite working. How to fix this?
For that scenario, the steps are these:
- Remove the alias from the RefinableDate you’re using.
- Remove the mapping between the People:SPS-Birthday & the RefinableDate. Save.
- Change the mapping to another RefinableDate.
- Add the alias to that RefinableDate.
- Temporarily create a new User Profile Property (call it “TempProp” or something similar).
- Add a value to that field for any user (nothing vulgar, thank you very much!)
- After SharePoint Search indexing has run (I’d guess after a few hours, but the next day at the latest), remove the value from the property.
- Then remove the property.
At this point, everything should work.
Alternatively, you can use Mikael Svenson’s scripts for reindexing user profiles – the end result should be the same: https://github.com/wobba/SPO-Trigger-Reindex
Latest posts by Antti K. Koskela (see all)
- How to fix Add-PnPApp failing with an Access Denied error - December 11, 2018
- Subsite creation in SharePoint fails with error 0x80070005 for any user (even global/farm admins!) - December 4, 2018
- New-PnPSite fails with “SiteStatus” : 3 - November 29, 2018
- Issues with User Profile Property visibility in Search-powered functionalities - November 27, 2018