Thursday, September 18, 2014

SharePoint List View Lookup Threshold

With the release of SharePoint 2010, resource throttling was introduced at the web application level to limit the number of items a list view (database query) can process in a single request, as well as to limit the number of lookup columns a single view can utilize at one time.

By default, List View Lookup threshold is set to 8.

To view the settings page for
Central Admin -> Application Management -> Manage Web Applications -> Select the web application -> General Settings -> Resource Throttling



As per TechNet,
“Each lookup column in a list view causes a join with another table. Each additional lookup column in a view increases the complexity of metadata navigation and list view queries. In addition to standard lookup columns, single-value managed metadata, multiple-value managed metadata, single-value people and group columns, and multiple-value people and group columns count as lookup columns. Adding lookup columns to a view does not cause a gradual or linear decrease in performance, rather performance is somewhat stable until after eight columns when it rapidly degrades.”

In short, all the below column types are considered towards list view look up threshold:

- Standard lookup columns
- Single-value managed metadata columns
- Multiple-value managed metadata columns
- Single-value people and group columns
- Multiple-value people and group columns

Note

As the number of look up columns increases beyond the default value in a list, you will come across performance issues in your farm.

Friday, September 5, 2014

After Project Server migration from one farm to another, you receive an error "This Web Part was unable to load”

Issue Description
I had done a migration of Project Server environment from one farm to another. (Database detach-attach).And some of the users had the below issue when trying to access the (Project Details Pages) PDP pages.

This Web Part was unable to load.
Information that may be useful in solving this problem was written to the Unified Logging Service (ULS) log on the Project Server with the following ID:
18c06eca-de62-4544-b11a-c3440ada01e9

This problem can occur in other ways also, such as:
1) You cannot create or edit projects in PWA.
2) You cannot open Project Details Pages in Server Settings.

I checked the ULS logs with the error id and was able to fix this issue.

Cause
The PWAURL property is set to a PWA site, but none identified yet.This should be null.


Resolution
Open SharePoint PowerShell and run the below commands:

$Web = get-SPWeb http://servername/pwa
$Web.AllProperties | Format-Table

The output of the second command will show if PWAURL was set to a URL (not expected) – if so then you can change this back to NULL again using PowerShell

$Web.AllProperties[“PWAURL”]=””
$Web.Update()


Reference

ULS Log
                                                                                                                                                                                                                                                                                                                                                Web Part Exception Unique ID: 18c04eca-de79-4585-b92a-c3960ada01e9 System.NullReferenceException: Object reference not set to an instance of an object.     at Microsoft.Office.Project.PWA.WebParts.ProjectFieldPartBase.GatherAndLoadCFList(Boolean bForceRefresh)     at Microsoft.Office.Project.PWA.WebParts.ProjectFieldPartBase.RebindGrid(Boolean forceRefresh)     at Microsoft.Office.Project.PWA.WebParts.ProjectFieldPartBase.PWA_OnLoad(EventArgs e)     at Microsoft.Office.Project.PWA.WebParts.PWAResiliencyPart.OnLoad(EventArgs e)          611d75ae-a62e-46c4-b3a9-b9311f4dc02a
w3wp.exe (0x1584)                                      0x1558      Project Server                             Unified Logging Service                c91s          Monitorable                Watson bucket parameters: Microsoft Project Server 2010, ULSException14, 070f6ea0 "project server", 0e001b67 "14.0.7015.0", 17ecd0fa "microsoft.office.project.server.pwa", 0e001bc2 "14.0.7106.0", 51eed0b6 "tue jul 23 14:51:34 2013", 00000c29 "00000c29", 00000077 "00000077", 4a6d3421 "nullreferenceexception", 63653972 "ce9r"               611d75ae-a62e-46c4-b3a9-b9311f4dc02a
w3wp.exe (0x1584)                                      0x1558      Web Content Management            Publishing                                   7fz3          Medium     Setting [Display] as the FormContext.FormMode for the current page    611d75ae-a62e-46c4-b3a9-b9311f4dc02a
w3wp.exe (0x1584)                                      0x1558      Web Content Management            Publishing                                   7fz3          Medium     Setting [Display] as the FormContext.FormMode for the current page    611d75ae-a62e-46c4-b3a9-b9311f4dc02a
w3wp.exe (0x1584)                                      0x1558      SharePoint Foundation                  Topology                                    e5mc         Medium     WcfSendRequest: RemoteAddress: 'http://servername:32843/d248615527544dfe8f90663b61673ee2/PSI/PWA.svc' Channel: 'Microsoft.Office.Project.Server.Interfaces.IPWA' Action: 'http://schemas.microsoft.com/office/project/server/webservices/PWA/AdminReadSiteMapTyped' MessageId: 'urn:uuid:a6cfcb4c-e800-4687-92cc-e7367ea735b0'         611d75ae-a62e-46c4-b3a9-b9311f4dc02a
w3wp.exe (0x15BC)                                      0x13FC      SharePoint Foundation                  Topology                                    e5mb        Medium     WcfReceiveRequest: LocalAddress: 'http://servername.abc.com:32843/d248615527544dfe8f90663b61673ee2/PSI/PWA.svc' Channel: 'System.ServiceModel.Channels.ServiceChannel' Action: 'http://schemas.microsoft.com/office/project/server/webservices/PWA/AdminReadSiteMapTyped' MessageId: 'urn:uuid:a6cfcb4c-e800-4687-92cc-e7367ea735b0'         611d75ae-a62e-46c4-b3a9-b9311f4dc02a
w3wp.exe (0x15BC)                                      0x13FC      SharePoint Foundation                  Monitoring                                  nasq          Medium     Entering monitored scope (ExecuteWcfServerOperation)         611d75ae-a62e-46c4-b3a9-b9311f4dc02a
w3wp.exe (0x15BC)                                      0x13FC      SharePoint Foundation                  Monitoring                                  b4ly          Medium     Leaving Monitored Scope (ExecuteWcfServerOperation). Execution Time=6.5183       611d75ae-a62e-46c4-b3a9-b9311f4dc02a
w3wp.exe (0x1584)                                      0x1558      Project Server                             General                                      ce9r          Exception   Web Part Exception Unique ID: 18c04eca-de79-4585-b92a-c3960ada01e9 System.NullReferenceException: Object reference not set to an instance of an object.     at Microsoft.Office.Project.PWA.WebParts.ProjectFieldPartBase.ReplacePlaceHoldersWithCustomFieldControls()     at Microsoft.Office.Project.PWA.WebParts.PWAPart.PageLoadCompleteInternal(Object sender, EventArgs e)    611d75ae-a62e-46c4-b3a9-b9311f4dc02a
w3wp.exe (0x1584)                                      0x1558      Project Server                             Unified Logging Service                c91s          Monitorable                Watson bucket parameters: Microsoft Project Server 2010, ULSException14, 070f6ea0 "project server", 0e001b67 "14.0.7015.0", 17ecd0fa "microsoft.office.project.server.pwa", 0e001bc2 "14.0.7106.0", 51eed0b6 "tue jul 23 14:51:34 2013", 00000c09 "00000c09", 00000011 "00000011", 4a6d3421 "nullreferenceexception", 63653972 "ce9r"               611d75ae-a62e-46c4-b3a9-b9311f4dc02a

w3wp.exe (0x1584)                                      0x22A4      SharePoint Foundation                  Monitoring                                  nasq          Medium     Entering monitored scope (Request (POST:http://abc.xyz.com:80/PWA/_vti_bin/PSI/Workflow.asmx))             

Thursday, September 4, 2014

SharePoint 2013 People Picker not working for domain security groups for List and Document Library Alerts

Issue Description

1. Not all the groups are being resolved by document library/list people picker.

2. You cannot send alerts to a security group instead of a user.

3. Even if some of the groups are being resolved, the alert emails are still not being sent.

Users were unable to setup email alerts on Document library "library1" on SharePoint site "http://mysitename/sites/site1/" for some Active directory groups "domain\ADGroup"

Product Version: SharePoint 2013

You get the below error message:
Unable to set alerts to domain security groups with error "We couldn't find an exact match" or “Sorry, you are not allowed to share this with external users.”


Cause
I had opened a ticket with Microsoft for this issue and worked with them and they finally confirmed this is a bug with SharePoint 2013. This issue has been fixed with May 7, 2014 Cumulative Update for SharePoint 2013.

Resolution

1) Log in to the all the SharePoint Servers in the farm. Browse to C:\Program Files\Common Files\microsoft shared\Web Server Extensions\15\TEMPLATE\LAYOUTS

2) Make a copy of SubNew.aspx .Now modify the SubNew.aspx . Search for <wssawc:ClientPeoplePicker

3) Paste the below text after the section SelectionSet="User,SecGroup" :

PrincipalAccountType="User,SecGroup"

Wednesday, September 3, 2014

AD Groups not displayed in SharePoint People Picker

Issue description
A user had created and Active Directory group and was not able to see the group in SharePoint People Picker
SharePoint version: SharePoint 2010 SP2

Cause                                                                                                                                             
The Active Directory group was created as a Distribution group

Resolution                                                                                                                                   
Active Directory groups should be a created as Security group (not Distribution group) to get listed in SharePoint People Picker.




Distribution groups cannot be used as security instances, such as assigning permissions to them. SharePoint uses Active Directory to authenticate a user. In order to do this, it must be a security principle that SharePoint is working with. Distribution groups are not security principles. 

Restore-SPSite : The content type text/html; charset=utf-8 of the response message does not match the content type of the binding (application/soap+msbin1). If using a custom encoder, be sure that the IsContentTypeSupported method is implemented properly

Issue Description
I had recently come across this error while trying to restore a SharePoint 2010 site.

Restore-SPSite : The content type text/html; charset=utf-8 of the response message does not match the content type of the binding (application/soap+msbin1). If using a custom encoder, be sure that the IsContentTypeSupported method is implemented properly

Cause
This could be because there is some error on your web.config files.

Resolution

Check the below web.config files 
1) Central administration
2) Specific SharePoint Web application
3) Security Token Service

1) Make sure that there are no spaces in the web.config file
2) There should not be duplicate nodes
3) Make sure all nodes are entered properly in the web.config files (especially when you are working with forms based configuration).