doesn't finish on really big site collection


nice & really useful tool!
But I ran it on a site collection that has over 6600 sites. The SiteListingsInfo.csv ends near /sites/H..., 3262 rows to be exact. The SiteListingsUsage.csv has 6666 rows, ending with /sites/w... which is correct. I am able to help you testing it if you don't have such a big site collection to test it on.
I also don't understand why the output information is split into two files and not in just one file. I have to parse & edit those files to be able to load them into excel, because they are not sorted equally. (and it's not related to the first problem, it happened on a site collection that has only about 900 sites and the program finished ok (same number of rows in both files). Can you change that?


kordeneaux wrote Feb 9, 2011 at 6:02 PM

I ran into the crashing issue as well. There is a memory leak issue on the recursive call inside ListWebs(). This can be fixed by checking and explicitly disposing the childWeb after the call:

foreach (SPWeb childWeb in Web.Webs)
                ListWebs(childWeb, Separation + "--", Writer);
                if (childWeb != null)
It is tricky to manage those SPWeb objects with a foreach loop inside a recursive method. My solution is recommended in the best coding practices here: http://msdn.microsoft.com/en-us/library/aa973248.aspx

wrote Feb 14, 2013 at 2:01 AM