User Profile Information not updated on site collection’s people and group

 

Scenario : User name paulpa has a change in the Title From “Support Engineer” to “Support Engineer 2”

If we Go Active directory Users and computer and select the user as paulpa

Click on Organisation tab and if we view the Title section we see

image

In the Profile details it has an updated Title as “Support Engineer 2” as below

image

If we logon using the credentials of Paulpa and then go to My settings as below

image

You will see the details of the user as below ( Details stored in the UserInfo table) which is not updated as expected

image

https://paul-moss/_layouts/userdisp.aspx

Explanation:

“There are actually 2 user profiles – one is a WSS profile and one is a MOSS profile. The WSS profile you access from Welcome user > My Settings page. The MOSS profiles are created when users are imported into the system from AD or LDAP. They are access from People Search or from a link off of your MySite.

The reason there are 2 is that you can install WSS without MOSS and they wanted a basic user profile. If you installed WSS without MOSS, you would see the profile (again, accessed through Welcome user > My Settings page) with about 3 properties.

If you install MOSS, do an import, and go to the WSS profile, you’ll see a bunch of properties added that MOSS adds. We now deprecate the WSS profile. If you want to add property values to your profile, you need to go to your MOSS profile from your MySite (MySite > Details). You’ll be on the editprofile.aspx page. Add your properties. We then sync your properties to the WSS user list. You will see the values show up on the WSS profile after the sync happens.”

So the question is how to force the replication?

Well, two MOSS Timer jobs per Web Application apparently control the replication. If you take a look at the Timer Job definitions (Central Administration -> Operations -> Timer Job definitions), you’ll find jobs called Profile Synchronization and Quick Profile Synchronization. These jobs should sync the changes to the WSS profiles. Unfortunately simply wait for the jobs to run aren’t good enough. However, a server reboot will make the synchronization happen. It is a bit drastic to reboot the server simply just to force MOSS/WSS to update a property update!

 

RESOLUTION

 

Method 1:

Use stsadm -o sync to force the property sync:

•-o -synctiming changes the Profile Sync job

•-o -sweeptiming changes the Quick Profile Sync job

I have gotten the best results by changing the schedule for the Profile Sync job to run every couple of minutes (stsadm -o sync -synctiming m:2). This may not be appropriate in a production environment with a large user population

Start a full Profile import and Run the below commands

1. Run the following commands to Sync the jobs

STSADM -o Sync -synctiming M:5

         STSADM -o sync -sweeptiming M:5

By default its set to

STSADM -o Sync -synctiming M:60

STSADM -o sync -sweeptiming M:5

As stated by a few people in the comments, the trick with changing the synctiming and sweeptiming settings does not always work. I had the same issue at a customer site recently where not matter what I did, the profiles wouldn’t sync. I event tried to restart the Timer Job Service and the entire server farm, as I seen it work in other situations. Unfortunately, it didn’t work either.

However, tried using the stsadm -o sync -listolddatabases <n> and stsadm -o sync -deleteolddatabases <n> commands.

The listolddatabases <n>option will list the databases that have not been successfully synchronized the last <n> days, and the deleteolddatabases <n>option will delete the synchronization information from the databases that are not successfully synchronized the last <n> days.

Have no fear, using the deleteolddatabases option will not delete the content databases.

After having deleted the old sync information I forced the timer jobs to run as described above, and the synchronization completed successfully.

If it still it does not work use method 2

 

Method 2:

We can use a tool called USERPROFILESYNC which can be downloaded from

https://userprofilesync.codeplex.com/

UserProfileSync will take user data from the Shared Services Administration User Profile and Properties and import it into a User Information List on a SharePoint site.

 

Syntax:

UserProfileSync -url <URL> [-r <Name>] | [-ssp <URL> [-d] [-c]]

-url <URL> The SharePoint site containing the User Information List to

update.

-ssp <URL> The SharePoint Services site containing the user profiles to

import.

-r <Name> Remove the column with display name <Name>. Use with caution!

Column names are case-sensitive.

-d Dry run. Display changes which would be made but make no

modifications.

-c Do not create new columns in the User Information List.

Maps user information from a SharePoint Services User Profile list to a

SharePoint site User Information List, adding columns and data.

 

Note : Use the Tool  with caution! Its not supported by Microsoft.

 

USAGE:

C:\Documents and Settings\Administrator.SOCCER>C:\USERPROFILESYNC\UserProfileSync.exe -url https://paul-moss -ssp https://paul-moss:22667/ssp/admin

 

Output

Opening User Information List on "https://paul-moss"

Opening SharePoint Services on "https://paul-moss:22667/ssp/admin"

User: murthygs

User: paulpa

Updating "Title", old: "Support Engineer ", new: "Support Engineer 2"

User: pavan

User: Joyce line

User: Administrator

 

 

After the command is completed we will be able to see the difference as below

image

image

Hope this helps!!!