SharePoint 2010 Enterprise Keywords not saving in the list/library

Are you having issues updating Enterprise Keywords metadata in document libraries/lists?

I have been looking to resolve the issue, we have been facing recently. I have read so many posts, which talks about deleting custom XML data, personal information settings for office documents or even running a Sharepoint Configuration Wizard BUT it is not possible to perform some of the steps in production environment.

Issue:

  • You have migrated some documents (office 2010/2003)  from one location to other location in SharePoint 2010
  • Your source documents has Enterprise Keywords metadata attached
  • After migrating, you are unable to save changes  Enterprise Keywords column
  • Some users also experience the issue, while updating metadata using Document Information Panel (DIP)

Root cause:

  • Source library has Enterprise Keywords enabled, which creates Enterprise Keywords column in the list/library
  • Destination library does not have the above setting turned ON, which is basically telling that we do not want to use Enterprise Keywords in the library
  • During Migration, source column (Enterprise Keywords) is brought over to destination library
  • After adding Enterprise Keywords to content type, it enables the setting but also creates some data corruption, which prevents us saving values to Enterprise Keywords column

Solution:

  • Before migration, enable Enterprise Keywords in the destination library, which will create Enterprise Keywords column in the list/library
  • Add Enterprise Keywords column to all the content types
  • Perform migration

OR if you are not doing migration work then delete existing Enterprise Keywords column and add it back again.
To Enable Enterprise Keywords:

Goto List/library settings -> Enterprise Metadata and Keywords Settings (Under Permissions management) -> Tick Enterprise Keywords (Add Enterprise Keywords)

 

 

The SharePoint item being crawled returned an error when requesting data from the web service. ( Error from SharePoint site: Value does not fall within the expected range. )

I recently came across an issue when we migrated documents to another site. Documents were migrated without any issues but we noticed that during search crawls, following errors were logged:

The SharePoint item being crawled returned an error when requesting data from the web service. ( Error from SharePoint site: Value does not fall within the expected range. )

To solve this below is what can be done:

1. Run the following sql query on the site collection content database:

Select tp_login, tp_systemid, tp_deleted from userinfo where len(ltrim(rtrim(tp_systemid))) <25 and tp_deleted = 0

2. Give some kind of permissions to the root site of the site collection to all the users returned by the query, except system users:

NT AUTHORITY\authenticated users 
NT AUTHORITY\local service 
NT AUTHORITY\system 
SHAREPOINT\system

4. After the query returns no results (accept the system accounts) start a full crawl (incremental crawl did the job for me).

Notes:

1. As for step 2, you should test 1-2 users just to make sure that after you give them permissions to the root site they are infect removed from the query search results.

2. By give permission you can give any permissions, “read”  is enough. While giving permissions to a user in the root level the SID is updated and fixed.

3. If this is still not working, try adding users to Site Collection Admins. Run the query again

4. Make sure added users have disappeared from the query result.

5. Delete added users from the site collections admin group.

6. Re-run query (just to make sure)

7. Run the crawl again and you should not see any errors.

 

SharePoint 2010 search issue no search results found for users one-way trust domain

This is about the issue that I experienced recently in SharePoint 2010 environment.

So you have an extranet site, which is open to your vendors or third parties.
- External vendors (external domain ) & internal users (internal domains) can access the site without any issues
- Your search service is configured correctly and you can see the successful crawls are happening on the content sources.
- External users can perform a search and getting correct results.
- When internal users using internal domain perform a search, they get ‘no results found’. Why this is happening?

I did some research and it turned out to be a known issue and related to the domain trust relationship between your external and internal domain. You might have one way trust relationship and running the PowerShell script followed by a full crawl can help you fix the issue.

RESOLUTION:

Run the following Windows PowerShell command:

$searchapp.SetProperty(“ForceClaimACLs”,1)

Where $searchapp is the Windows PowerShell object for the search service application to be modified. ($searchapp = Get-SPEnterpriseSearchServiceApplication)

You will not see any confirmation, the SetProperty() command sets the value for ForceClaimACLs in the search administration database to 1.

A full crawl is required to enable the new ACL format across the content.

NOTE: Search alerts will be broken after enabling this functionality

Work Around: Use two way trust instead of one way.

I found the Microsoft KB article http://support.microsoft.com/kb/2344518 which explain the symptoms and resolution.

Happy Searching!!