Issue: We have some users reporting that their picture is displaying on the mysite but not displaying on SharePoint groups when added.
Error: There was no error as such, however in SharePoint group user picture is not showing as it was showing in the Mysite.
Troubleshooting:
Have checked the user Pictures and they seem to be fine on users’ mysites
Added my id in the group and my picture does display in 5 min.
There is no issue with the file type and the image size on the mysite.
It’s just not working for those few users.
Changed my picture on the mysite and re-added the id in the group to check if Profile sync timer job has any issue but it did worked fine.
There were no issues with the Profile synchronization and Quick synchronization timer job definitions.
Resolution:
Searched on internet and found a blog http://www.21apps.com/sharepoint/user-profiles-why-do-my-changes-not-show-in-other-sites, which gave me clue for further investigation.
Why do some Team Sites not update with my details
The main reason for confusion around the updating (sync’ing) of My Profile details into team sites is that it is now based on if the user is Active. As part of the upgrade to V3 Microsoft introduced the idea of users being active in a site rather than just having access.
When you first visit a site a record is recorded in the UserInfo table of the sites Content Database. The field tp_IsActive is defaulted to false, which means you have visited but have not interacted with the site.
The Sync process uses this value to determine if the user info should be replicated from the My Profile details as edited above.
Following on from the example above you should be able to refresh your team site that you had only visited and see the user name is still the same, it was not updated when the My Site was updated.
How to check if user active in SQL Database:
Go to Start -> Programs -> Microsoft SQL Server 2005/2008/2012 -> Click SQL Server Management Studio.
Connect to the SQL Server instance using the correct User ID and Password.
Note: If you are connecting SQL Server form your client then you may need to connect to SQL Server with special account with the correct permissions on the SQL Server. Run the SQL MS with Run as option in that case.
Expand Databases -> Choose to expand the DB in which your Site collection resides.
Expand Tables in that Database -> Right click on dbo.userinfo table.
FROM [Database name].[dbo].[UserInfo]
with(nolock)
where tp_login like 'User ID’
After running the above query, it will display all the result of the sites on which that user is having the permissions.
You need to find the site against its ID, you can find the site ID using the PS commands.
PS > $mysite = Get-SPSite
PS > $mysite.id
Next steps would be to check if the user is active on the site or not.
You need to find form the result of query the value of the field tp_IsActive is 0, which means users had visited the site in the past but had not interacted with the site much else this value had to be 1.
Steps suggested to user:
Asked user to update their new picture on the mysite. Deleted them from the All Peoples group from the site and Re-added them. After waiting sometime it worked for the user i.e. their pictures were displaying in the SharePoint groups.
If you had any issues executing the above steps do let me know.
Applies to:
- SharePoint Server 2010,
- SharePoint Server 2013.