<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Brad Smith's blog : SharePoint</title><link>http://blogs.msdn.com/brsmith/archive/tags/SharePoint/default.aspx</link><description>Tags: SharePoint</description><dc:language>en</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Poor man’s SharePoint warm-up script</title><link>http://blogs.msdn.com/brsmith/archive/2009/02/02/poor-man-s-sharepoint-warm-up-script.aspx</link><pubDate>Mon, 02 Feb 2009 01:35:04 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9388810</guid><dc:creator>brsmith</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/brsmith/comments/9388810.aspx</comments><wfw:commentRss>http://blogs.msdn.com/brsmith/commentrss.aspx?PostID=9388810</wfw:commentRss><description>&lt;p&gt;It’s simple, it’s a little bit manual, but it works well.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;warmup.cmd&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;stsadm   &lt;br /&gt;pages.html&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;pages.html&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&amp;lt;html&amp;gt;   &lt;br /&gt;&amp;lt;body&amp;gt;    &lt;br /&gt;&amp;lt;iframe src=”&lt;a href="http://spca:18000/"&gt;http://spca:18000/&lt;/a&gt;”&amp;gt;&amp;lt;/iframe&amp;gt;    &lt;br /&gt;&amp;lt;iframe src=”&lt;a href="http://myssp.domain/ssp/admin/"&gt;http://myssp.domain/ssp/admin/&lt;/a&gt;”&amp;gt;&amp;lt;/iframe&amp;gt;    &lt;br /&gt;&amp;lt;iframe src=&amp;quot;&lt;a href="http://sandbox/&amp;quot;"&gt;http://sandbox/&amp;quot;&lt;/a&gt;&amp;gt;&amp;lt;/iframe&amp;gt;    &lt;br /&gt;&amp;lt;/body&amp;gt;    &lt;br /&gt;&amp;lt;/html&amp;gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;warmup.cmd assumes you have added the 12 hive to your path, else you can just fully qualify the path to stsadm.&amp;#160; It’ll finish by calling your simple html page which will hit all the urls you want to warmup.&lt;/p&gt;  &lt;p&gt;I use this iframe approach on my SharePoint admin site so I can see if all the site collections that I care about are up and running. Sometimes I throw a width=100% attribute in the iframe tag so all the websites stack on top of each other nicely.&lt;/p&gt;  &lt;p&gt;This simple SharePoint warmup script is great to run at the end of your deployment scripts or as a task to put in your startup menu.&lt;/p&gt;  &lt;p&gt;My other warmup script is a little bit of powershell which lists all of the site collection urls in the farm and adds them to the pages.html file, but I mostly just use the simple approach without powershell to start with at a new client site.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9388810" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/brsmith/archive/tags/SharePoint/default.aspx">SharePoint</category></item><item><title>SharePoint uninstall - "the product installation has been corrupted, run setup from original source"</title><link>http://blogs.msdn.com/brsmith/archive/2009/01/29/sharepoint-uninstall-the-product-installation-has-been-corrupted-run-setup-from-original-source.aspx</link><pubDate>Thu, 29 Jan 2009 12:01:48 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9382802</guid><dc:creator>brsmith</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/brsmith/comments/9382802.aspx</comments><wfw:commentRss>http://blogs.msdn.com/brsmith/commentrss.aspx?PostID=9382802</wfw:commentRss><description>&lt;p&gt;&amp;quot;the product installation has been corrupted, run setup from original source&amp;quot; &lt;/p&gt;  &lt;p&gt;See this message before?&amp;#160; I saw this when trying to uninstall SharePoint from the Add/Remove Programs menu.&amp;#160; This happened after someone &lt;a title="How to uninstall Microsoft Office SharePoint Server 2007 if you accidently deleted IIS first" href="http://blogs.msdn.com/brsmith/archive/2009/01/23/how-to-uninstall-microsoft-office-sharepoint-server-2007-if-you-accidently-deleted-iis-first.aspx"&gt;uninstalled IIS before trying to uninstall SharePoint&lt;/a&gt; and then reinstalled IIS.&lt;/p&gt;  &lt;p&gt;The suggestion was a good one.&amp;#160; After finding the SharePoint source files we ran the setup.exe, entered the product key and let it run.&amp;#160; A few minutes later we got a more specific error message:&lt;/p&gt;  &lt;p&gt;“Microsoft Office SharePoint Server 2007 encountered an error during setup. An installation package for the product Microsoft Search Front End cannot be found. Try installation again using a valid copy of the installation package 'osrchwfe.msi'.”&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/brsmith/WindowsLiveWriter/SharePointuninstalltheproductinstallatio_11986/SharePoint%20setup%20error%20message_2.png"&gt;&lt;img title="SharePoint setup error message" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="207" alt="SharePoint setup error message" src="http://blogs.msdn.com/blogfiles/brsmith/WindowsLiveWriter/SharePointuninstalltheproductinstallatio_11986/SharePoint%20setup%20error%20message_thumb.png" width="578" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Well, that’s a much better error message.&amp;#160; Apparently the Microsoft Search Front End component is not happy. Reinstall required. After a quick search through the SharePoint installation source files we find the ‘osrchwfe.msi’ file at \Global\Search\osrchwfe.msi.&amp;#160; Double click to run, and a few seconds later it’s finished.&lt;/p&gt;  &lt;p&gt;Run setup.exe again and all goes well. Takes a few minutes.&lt;/p&gt;  &lt;p&gt;Select remove from the Add/Remove Programs menu and all goes well. SharePoint is gone. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/brsmith/WindowsLiveWriter/SharePointuninstalltheproductinstallatio_11986/SharePoint%20Uninstalled%20successfully_2.png"&gt;&lt;img title="SharePoint Uninstalled successfully" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="272" alt="SharePoint Uninstalled successfully" src="http://blogs.msdn.com/blogfiles/brsmith/WindowsLiveWriter/SharePointuninstalltheproductinstallatio_11986/SharePoint%20Uninstalled%20successfully_thumb.png" width="466" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Reboot required.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9382802" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/brsmith/archive/tags/SharePoint/default.aspx">SharePoint</category></item><item><title>Don’t recycle the Application Pool for Central Admin site for faster load times</title><link>http://blogs.msdn.com/brsmith/archive/2009/01/29/don-t-recycle-the-application-pool-for-central-admin-site-for-faster-load-times.aspx</link><pubDate>Thu, 29 Jan 2009 11:39:42 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9382775</guid><dc:creator>brsmith</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/brsmith/comments/9382775.aspx</comments><wfw:commentRss>http://blogs.msdn.com/brsmith/commentrss.aspx?PostID=9382775</wfw:commentRss><description>&lt;p&gt;The default app pool setting for the SharePoint Central Admin site is to recycle at a set time each day.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/brsmith/WindowsLiveWriter/DontrecycletheApplicationPoolforCentralA_1145F/AppPoolRecyclingSettings_2.png"&gt;&lt;img title="AppPoolRecyclingSettings" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="426" alt="AppPoolRecyclingSettings" src="http://blogs.msdn.com/blogfiles/brsmith/WindowsLiveWriter/DontrecycletheApplicationPoolforCentralA_1145F/AppPoolRecyclingSettings_thumb.png" width="562" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Given that most of us rarely use Central Admin more than once or twice each day (because we script all the changes to the SharePoint farm configuration, don’t we?&amp;#160; Don’t we??&amp;#160; Ok) we don’t like it when you hit the CA url and it’s takes ages for the site to &lt;a title="JIT compile" href="http://en.wikipedia.org/wiki/Just-in-time_compilation"&gt;JIT compile&lt;/a&gt;.&amp;#160; Because the app pool recycles every night you’ll take the hit every time you hit the site for the first time in a day.&lt;/p&gt;  &lt;p&gt;Solution: Don’t recycle the Central Admin app pool.&amp;#160; &lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Browse to IIS Manager (Start &amp;gt;&amp;gt; Run &amp;gt;&amp;gt; inetmgr)&lt;/li&gt;    &lt;li&gt;Expand the “Application Pools” node&lt;/li&gt;    &lt;li&gt;Select the “SharePoint Central Administration v3” app pool&lt;/li&gt;    &lt;li&gt;Edit Application Pool Recycling Settings&lt;/li&gt;    &lt;li&gt;Uncheck the Specific time(s) box&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/brsmith/WindowsLiveWriter/DontrecycletheApplicationPoolforCentralA_1145F/AppPoolRecyclingSettings_After_2.png"&gt;&lt;img title="AppPoolRecyclingSettings_After" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="422" alt="AppPoolRecyclingSettings_After" src="http://blogs.msdn.com/blogfiles/brsmith/WindowsLiveWriter/DontrecycletheApplicationPoolforCentralA_1145F/AppPoolRecyclingSettings_After_thumb.png" width="562" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;Test it yourself.&amp;#160; Decide if it’s something you should configure in your own SharePoint environment.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9382775" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/brsmith/archive/tags/SharePoint/default.aspx">SharePoint</category></item><item><title>How to uninstall Microsoft Office SharePoint Server 2007 if you accidently deleted IIS first</title><link>http://blogs.msdn.com/brsmith/archive/2009/01/23/how-to-uninstall-microsoft-office-sharepoint-server-2007-if-you-accidently-deleted-iis-first.aspx</link><pubDate>Fri, 23 Jan 2009 09:30:57 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9372234</guid><dc:creator>brsmith</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/brsmith/comments/9372234.aspx</comments><wfw:commentRss>http://blogs.msdn.com/brsmith/commentrss.aspx?PostID=9372234</wfw:commentRss><description>&lt;p&gt;So you’ve gone to uninstall SharePoint and you find that someone has removed IIS first. You go to Add/Remove programs and select uninstall for SharePoint but it fails with an error message “Error 1920.Service 'W3SVC' (W3SVC) failed to start. Verify that you have sufficient privileges to start system services”. No kidding, there is no IIS and it can’t start W3SVC. Ok.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/brsmith/WindowsLiveWriter/HowtouninstallMicrosoftOfficeSharePointS_F5DD/Error%20Uninstalling%20SharePoint_4.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Error Uninstalling SharePoint" border="0" alt="Error Uninstalling SharePoint" src="http://blogs.msdn.com/blogfiles/brsmith/WindowsLiveWriter/HowtouninstallMicrosoftOfficeSharePointS_F5DD/Error%20Uninstalling%20SharePoint_thumb_1.jpg" width="508" height="341" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now what do we do?&lt;/p&gt;  &lt;p&gt;Reinstall IIS and then uninstall SharePoint from Add/Remove Programs.&lt;/p&gt;  &lt;p&gt;Done.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9372234" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/brsmith/archive/tags/SharePoint/default.aspx">SharePoint</category></item><item><title>Scripted provisioning of multiple Central Admin web applications</title><link>http://blogs.msdn.com/brsmith/archive/2009/01/22/scripted-provisioning-of-multiple-central-admin-web-applications.aspx</link><pubDate>Thu, 22 Jan 2009 16:09:11 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9367265</guid><dc:creator>brsmith</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/brsmith/comments/9367265.aspx</comments><wfw:commentRss>http://blogs.msdn.com/brsmith/commentrss.aspx?PostID=9367265</wfw:commentRss><description>&lt;p&gt;After reading some other posts about setting up the SharePoint Central Admin Web Application on multiple servers I thought it would be useful to post just a little more information on the topic. &lt;/p&gt;  &lt;p&gt;The &lt;a title="Running Central Admin on Multiple Servers within a Farm" href="http://sharepoint.microsoft.com/blogs/fromthefield/Lists/Posts/Post.aspx?ID=60"&gt;From the Field&lt;/a&gt; blog covered this topic really well. I then read a post by Spence Harbar on &lt;a title="Central Admin high availability, load balancing, security and general recommendations" href="http://www.harbar.net/articles/spca.aspx"&gt;Central Admin high availability, load balancing, security and general recommendations&lt;/a&gt;. You must read that one! &lt;/p&gt;  &lt;p&gt;My day to day work has recently had a focus on automating the deployment of SharePoint farms. So in the spirit of automation, here's how to approach the basic provisioning of Central Admin (CA) on multiple servers in a SharePoint farm. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Farm Topology&lt;/strong&gt;     &lt;br /&gt;-------------     &lt;br /&gt;Server1: CA, Web App (WFE)     &lt;br /&gt;Server2: Indexer     &lt;br /&gt;Server3: Web App (WFE), Query     &lt;br /&gt;Server4: Web App (WFE), Query &lt;/p&gt;  &lt;p&gt;Server3 and Server4: NLB &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Scenario&lt;/strong&gt;     &lt;br /&gt;--------     &lt;br /&gt;You have CA provisioned on Server1 (&lt;a href="http://server1:1234"&gt;http://server1:1234&lt;/a&gt;) and you'd like to provision CA on Server2 (&lt;a href="http://server2:1234"&gt;http://server2:1234&lt;/a&gt;) for redundancy. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Quick Answer&lt;/strong&gt;     &lt;br /&gt;------------     &lt;br /&gt;Logged on to Server2 cmd line, run the following commands:     &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;psconfig -cmd adminvs -provision -port 1234 –windowsauthprovider onlyusentlm    &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;stsadm -o deletealternatedomain -incomingurl &lt;a href="http://server1:1234"&gt;http://server1:1234&lt;/a&gt;     &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;stsadm -o addalternatedomain -url &lt;a href="http://server2:1234"&gt;http://server2:1234&lt;/a&gt; –incomingurl &lt;a href="http://server1:1234"&gt;http://server1:1234&lt;/a&gt; -urlzone intranet &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Now you can browse to either &lt;a href="http://server1:1234"&gt;http://server1:1234&lt;/a&gt; or &lt;a href="http://server2:1234"&gt;http://server2:1234&lt;/a&gt; and you'll have a CA web application. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;em&gt;&lt;u&gt;Note&lt;/u&gt;&lt;/em&gt;&lt;/strong&gt;: Here’s where my experience has differed from other posts on this topic. If you launch SharePoint Central Administration from the &amp;quot;Start &amp;gt; Program Files...&amp;quot; shortcut you will always go to &lt;a href="http://server2:1234"&gt;http://server2:1234&lt;/a&gt;&amp;#160;&amp;#160; i.e. the last CA wins, it’s the one that gets put in the registry on all servers.&amp;#160; This is because others start the CA service on a new server via the existing CA web page, whereas I provision the CA on the new server by using the above psconfig command.&lt;/p&gt;  &lt;p&gt;I encourage admins to script their tasks where ever possible as it leaves a clear record of the action taken. Provisioning a redundant CA will most likely be done as a part of the initial farm build, in which case you should &lt;strong&gt;definitely&lt;/strong&gt; be scripting the farm configuration.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Some more information&lt;/strong&gt;&amp;#160; &lt;br /&gt;----------------------     &lt;br /&gt;After running through the commands above you're left with the most recent CA server being the &amp;quot;primary&amp;quot; CA. What I mean by “primary” is that every server in the SharePoint farm now has a registry entry for &lt;strong&gt;THE&lt;/strong&gt; CA server and it points to the new one (Server2). &lt;/p&gt;  &lt;p&gt;Why is this? &lt;/p&gt;  &lt;p&gt;Well it makes sense.&amp;#160; If you have CA running on a single machine and it goes down, you'll want to put the CA on another server in the farm.&amp;#160; &lt;/p&gt;  &lt;p&gt;After installing the CA on the new server SharePoint updates all servers in the farm and says &amp;quot;hey... this new server is &lt;strong&gt;THE&lt;/strong&gt; CA, forget about the old one&amp;quot;.&amp;#160; If it didn't do that you would need to manually update every server in the farm so it no longer points to the non-existant, original, CA server (the dead one). &lt;/p&gt;  &lt;p&gt;But what if you want to add CA to another server in the farm for redundancy but you still want the original CA server to be the &amp;quot;primary&amp;quot; CA, the one in the registry and hence the one that the link in the Start menu takes you to? &lt;/p&gt;  &lt;p&gt;Well, you can do it a few ways:    &lt;br /&gt;1. You can modify the registry on all servers currently in the SharePoint farm. The problem is that when you add a new server to the farm it's registry entry will still point to the latest CA server.     &lt;br /&gt;2. You can unprovision CA from your original server and then provision it again, making it the latest CA server added and therefore the one in the registry and start menu on every server in the farm. &lt;/p&gt;  &lt;p&gt;I like number 2.&amp;#160; It's an extra few commands to run in the command line, but it does the job well and handles new servers being added to the farm in the future. &lt;/p&gt;  &lt;p&gt;Given that I usually have a SharePoint Admins team site with links to the Central Admin web applications directly, I don’t feel the need to have the registry updated on each server running CA to point to it’s own url.&amp;#160; My second CA in the farm is just there in case something happens to my primary CA server.&amp;#160; If it goes down I’ll browse directly to the second url. I don’t need the start menu link.&amp;#160; You may work differently.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Wrapping up&lt;/strong&gt;     &lt;br /&gt;------------     &lt;br /&gt;So, read the two &lt;a title="Running Central Admin on Multiple Servers within a Farm" href="http://sharepoint.microsoft.com/blogs/fromthefield/Lists/Posts/Post.aspx?ID=60"&gt;great&lt;/a&gt; &lt;a title="SharePoint Central Administration: High Availability, Load Balancing, Security &amp;amp; General Recommendations" href="http://www.harbar.net/articles/spca.aspx"&gt;posts&lt;/a&gt; I mentioned at the beginning and then put the commands above into a script to get the job done. Test it and refine the scripts until they fit your own scenario.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9367265" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/brsmith/archive/tags/SharePoint/default.aspx">SharePoint</category></item></channel></rss>