I’ve been helping debug some weird issues in a customer environment. As a part of that we’re looking at some odd behavior around provisioning SharePoint sites. It looks like the PublishingLayout property/field isn’t being set for some content management/publishing pages. It’s odd stuff. So we created a site with their site definition and it was broken. I immediately went to the ULS logs (C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\LOGS) and found numerous errors. I started wondering what had been done to cause the errors. However, the more I dug into the problem I realized that many of the errors that I was seeing in their site creation existed with the out of the box site definitions.
I ended up running a site creation on a clean box with MOSS 2007, Service Pack 1, and the Infrastructure Updates on it. I’ve uploaded an Excel spreadsheet of a section of the log representing the provisioning process. There are some interesting revelations that can be ascertained from this file:
- A standard Publishing site caused 980 lines in the ULS log just for provisioning.
- Internally the SharePoint API throws unnecessary exceptions. There were a total of twenty (20) System.IO.FileNotFoundException objects thrown. They were all for lists that didn’t exist yet.
- You’re going to get that “Potentially Excessive number of SPRequest objects (#) currently unreleased on thread #. Ensure that this object or its parent (such as SPWeb or SPSite) is being properly disposed.” I got it with a clean install by just creating a new site. One user. No custom code.
I’ve still not sorted out the issue with the site definition — but I’m pretty clear now that it will be difficult to find among the thousand other lines of messages in the ULS log.