Share-n-dipity

SharePoint serendipity is the effect by which one accidentally discovers something fortunate, especially while looking for something else entirely. In this case, it is the occassional musings, observations, and Ouija board readings about the phabulously

Large List Throttling for External Lists in SharePoint 2010

Large List Throttling for External Lists in SharePoint 2010

  • Comments 4
  • Likes

I’ve already done one post with information on the new list throttling features in SharePoint 2010.  This week the question came up about how that applies, or what applies, to throttling lists based on External Content Types (ECT).  These are lists that you’ll also hear called Virtual Lists sometimes or External Lists, and refer to data that’s being retrieved using the new BCS framework in SharePoint 2010.  BCS is the evolution of BDC from SharePoint 2007 for those of you not familiar with it.
 
But getting back to list throttling…Chris C. was good enough to point out that external lists don’t use the same list throttling mechanisms that I described in my first post.  They have their own throttle thresholds and ways in which to change them.  Mohammed N. was kind enough to share these default limits (subject to change by RTM time, by the way) as well as include some PowerShell examples of how you can modify these values yourself.  Thanks for this info Mohammed!
 
So, here are the out of the box throttling limits for external lists.  Note that these limits are applied per instance of the Business Data Catalog service application; if you have multiple instances then each one can have different values:
 
Data Type
Limit Type
Limit
Database
Rows per fetch
2000
Database
Timeout
3 minutes
Web Service / WCF
Size of fetch
30MB
Web Service / WCF
Timeout
3 minutes
 
Now, here’s a few PowerShell examples that Mohammed had to share; note that it assumes you have an instance of the Business Data Catalog service application called “Business Data Catalog”:
 
$bdcAppProxy = Get-SPServiceApplicationProxy | where {$_ -match "Business Data Catalog"}
 
$throttleDb = Get-SPBusinessDataCatalogThrottleConfig -Scope Database -ThrottleType Items -ServiceApplicationProxy $bdcAppProxy
Set-SPBusinessDataCatalogThrottleConfig -Identity $throttleDb -maximum 10000 -default 8000
 
$throttleWCF = Get-SPBusinessDataCatalogThrottleConfig -Scope WCF -ThrottleType Size -ServiceApplicationProxy $bdcAppProxy
Set-SPBusinessDataCatalogThrottleConfig -Identity $throttleWCF -maximum 100000000 -default 50000000
 
$throttleConn = Get-SPBusinessDataCatalogThrottleConfig -Scope Global -ThrottleType Connections -ServiceApplicationProxy $bdcAppProxy
Set-SPBusinessDataCatalogThrottleConfig -Identity $throttleConn -maximum 200 -default 150
Comments
Your comment has been posted.   Close
Thank you, your comment requires moderation so it may take a while to appear.   Close
Leave a Comment