Support policy regarding use of NoILMUsed property

Summary

In the August 2011 Cumulative Update (CU) for SharePoint Server 2010, a new property (NoILMUsed) is exposed as part of the UserProfileApplication class. The purpose of this article is to advise against the use of this property.

This property is for Microsoft-internal use only. Using this property could put your profile service application and data in an unusable state.

If you have accidentally toggled this property, the following Windows PowerShell script can be used to revert settings back to their default state:


$upa = Get-SPServiceApplication | ? {$_.typename -like 'User Profile *'}
if ($upa -eq $null)
{
    Write-Host "No User Profile service application is found."
    Return
}

if ($upa.noILMUsed -eq $true)
{
    Write-Host "Reverting back the NoILMUsed flag to false..."
    $upa.noILMUsed = $false   
    try
    {
        $upa.Update()
    }
    catch
    {
        Write-Host "Failed updating UPA once. Try it again..."
        $upa = Get-SPServiceApplication | ? {$_.typename -like 'User Profile *'}
        $upa.noILMUsed = $false
        $upa.Update()
    }

    # check the flag after update
    $upa = Get-SPServiceApplication | ? {$_.typename -like 'User Profile *'}
    if ($upa.noILMUsed -eq $false)
    {
        Write-Host "Successfully reverted back the NoILMUsed flag to false."
    }
    else
    {
        Write-Host "Failed to revert back the flag. Please try running the script again."
        Return;
    }
}
else
{
    Write-Host "The NOILMUsed flag is already set to false. "
}

# check sync service status
$syncServices = @(Get-SPServiceinstance | ? {$_.typename -like 'User Profile Synchronization *'})
$flag = $false
foreach ($service in $syncServices)
{
    if ($service.status -eq 'Online')
    {
        $flag = $true
        break
    }
}

if ($flag -eq $false)
{
    Write-Host "The User Profile Synchronization service is not started in this farm. Please proceed with restarting the profile sync service when in need."
}
else
{
    Write-Host "All appears to be good."
}

 

More Information

The module containing the property is: Microsoft.Office.Server.UserProfiles.dll.

The version of the module is 14.0.6108.5000.

The namespace and class containing this property is: Microsoft.Office.Server.Administration.UserProfileApplication
Note The warning in the "Summary" section does not apply to SharePoint Server 2016. In SharePoint Server 2016, NoILMUsed is currently required in order to import the Manager property and to leverage Audiences when you're using Microsoft Identity Manager (MIM).
Properties

Article ID: 2624198 - Last Review: Feb 1, 2017 - Revision: 12

Feedback