How Microsoft Is Doing Records Management

SHAREPOINT 2010 WEBINAR
How Microsoft Is Using SharePoint & Colligo for ECM & Records Management
Tuesday, September 21, 2010
8:00 AM Pacific / 11:00 AM Eastern
4:00 PM London / 5:00 PM Paris

Join Microsoft guest speaker Nishan DeSilva on September 21st for the webinar: “How Microsoft Is Using SharePoint 2010 & Colligo for ECM & Records Management.” Nishan DeSilva is the Director of Information Management & Corporate Records Compliance at Microsoft. He will provide an inside look at how Microsoft’s Legal and Corporate Affairs Department (LCA) is leveraging SharePoint 2010 and Colligo Contributor to address compliance while empowering users to get their work done.
In this webinar, you’ll learn:

  • Microsoft’s strategy in LCA for information & records management
  • How to effectively move unstructured content & email into SharePoint
  • How to apply consistent classification & compliant retention policies
  • How Colligo Contributor facilitates email management in SharePoint
  • How to improve the user experience to drive adoption & compliance

Nishan DeSilva will provide insights into Microsoft’s strategy for SharePoint 2010 and how SharePoint along with Colligo Contributor enables organizations to take ownership of their information assets. Barry Jinks, Founder and CEO of Colligo, will discuss how client solutions add value to SharePoint 2010 and provide important functionality for seamlessly integrating Microsoft Outlook and SharePoint.
For new strategies to improve ECM and records management in your organization with SharePoint 2010, register for this webinar below!

–> Register for this Free Webcast!

Updated Guidance on SharePoint 2010 Upgrade and the FAB 40 application templates

I’ve been telling people that Microsoft would be providing some guidance, and some of that guidance has come. Samantha Robertson a technical writer on the SharePoint team who is the author for much of the upgrade content on 2007 and 2010 on TechNet often without credit has posted some guidance.

Her post is titled “SharePoint 2010 Products: Upgrade and the Fabulous 40 Application Templates”

It’s broken down into a couple of categories.  The information on…

Upgrade Guidance

1. What to do with the .stp files – STP is no longer an supported extension for template files.  The new format is the .wsp which is the same as it was for the solutions.  Now we have client solutions, and even saving a site as a template in SharePoint will generate a .wsp file.  Samantha includes the steps for recreating your upgraded site as a 2010 wsp site template.

2. What to do with the .wsp (solutions) – The server solutions in an in place upgrade if they are there should upgrade as is.  Some have issues, Samantha has explained these and points to the SharePoint setup forum (Absence Request and Vacation Schedule Management, Call Center, Help Desk, IT Team Workspace, Knowledge Base, and Physical Asset Tracking and Management)

Removing the Template Dependency

While it sounds like .stp files are the harder ones to deal with in reading her post, the opposite is true.  The .wsp files are the ones that contain custom site definitions.  Sure these can be recompiled and redeployed, but if you don’t care to create new sites based on those templates you can simply remove the template file, the stp and move on.

In a previous post “Remove/Deactivate a missing feature for a cleaner upgrade” I address how to detract a feature if you are no longer using them, such as may be the case where a sample site was created using the template, but no longer needs it.

To Remove a Template

This will enumerate the custom templates in a farm

stsadm.exe -o enumtemplates

To remove a template you’ll need the template title, I encourage quotes.

stsadm.exe -o deletetemplate -title “template title”

If you have multiple languages installed you may need to specifiy the language id such as 1033 for English.

stsadm.exe -o deletetemplate -title <template title> -lcid <language>

 

She also links to a great resource put together by Khalil who has recompiled the Fabulous 40 2007 app templates into updated solutions for 2010.  While not yet complete he’s still working.  This is a key resource for people trying to maintain sites for people that are looking to do a database attach.  If you’re building clean 2010 farms, this is truly a blessing.  Thanks Khalil.

3. Fab 40 Templates [upgraded by Khalil] for MOSS 2010

While I was hoping to see more guidance from Microsoft at least we’ve got something to work with.  Thanks Samantha and Khalil!

SharePoint 2010 Upgrade Decision Tree

I love it when the community comes together.  You can see the twitter discussion with Todd Klindt, Rick Taylor and Benjamin Athawes (on his blog) that resulted in a few different decision trees to help us better discuss the recommendations of In Place Upgrade vs. Database attach and really one of my favorites, the hybrid.  In this recommendation decision tree, you’ll I rarely recommend in place without combining with database attach to mitigate the risks of full disk and other issues not captured by preupgrade check or in the prerequiste assessments such as SQL related patching issues.  The only case is in the smallest of deployments where people are using the basic install which I don’t recommend anyway.

Love to get your feedback on this.  I threw in the Third party migration & tools as a bonus.  Some people wonder how it fits in.

You can grab the PDF: SharePoint 2010 Upgrade Decision Tree

If you want to discuss the Visio then you can find me on twitter @joeloleson

 

image

We’re Serious – Don’t Modify Your Database or Face Consequences

Today in SharePoint land there was a forum post about what’s ok and not ok around modifying the database.  It’s been a long standing position by the SharePoint team to keep your paws out of the database, but recent rules added into the preupgradecheck go further to make sure the schema is in the expected state.

Trevor states:

Can you upgrade to SharePoint 2007 SP2?  The database timer job includes an index defrag in it.  Also, reading or writing to SharePoint databases will throw you into an unsupported state. > Please see: http://msdn.microsoft.com/en-us/library/bb861829%28office.12%29.aspx

Benjamin explains:

I wrote a blog post a while back which details some information regarded supported operations on MOSS databases at http://mossblogger.blogspot.com/2010/06/administration-supported-database.html

Microsoft published a very useful white paper back in November 2009 called "Database Maintenance for Office SharePoint Server 2007" which on the whole is still relevant.

I went on to explain the fragile nature of vendors working with Microsoft’s help to build tools which Microsoft SharePoint clients may use or recommend to clients.  Some of which may use backend protocol changes with microsoft’s protocol documentation to do things not readily exposed in the object model.  Migration and recovery tools may fall into this category.  As is suggested in the modified database error for preupgrade check.  “User modifications to the SharePoint content database, including but not limited to table schemas, index, stored procedures, are not supported and will cause upgrade[…] to fail.”  Obviously if you’re having problems with a tool you should go to the vendor of the tool.  It’s the same if you’ve been using a tool which might have changed the schema.  You should find out what might have caused the database to be modified.

What I’m finding is the preupgradecheck tool has some false positives with the modified databases rule particular.  Some who have installed Project Server or in this case below by simply upgrade not finishing it is reporting the database as modified.  Just because it is being reported as such does not mean that is the case… apparently.

One recent Q&A included someone who had possibly run the graual upgrade and another who simply needed to migrate the databases to avoid missing setup files reported by the preupgrade check.

As is the case with Quest software, most migration vendors and backup/restore vendors were given early access to the bits and many including quest participated in upgrade workshops to help ensure that the tools are compatible with the processes that Microsoft and it’s partners will go through in an upgrade… such that by upgrade time for the customer, the vendor is more aware of what might happen and how to help the customer overcome these challenges.

Earlier today I had finished an WSS 3.0 SP2 and MOSS 2007 SP2 install and fixed issues related to missing features and was getting a clean bill of health with the preupgradecheck.  After getting this I was curious what was fixed in the latest cumulative update currently the June 2010 CU.

Now I’m seeing

InvalidDatabaseSchema… Failed
ContentOrphan… Passed
SiteOrphan… Passed
PendingUpgrade… Failed

 

Failed : Content database with modified database schemas

User modifications to the SharePoint content database, including but not limited to table schemas, index, stored procedures, are not supported and will cause upgrade to future versions of SharePoint to fail.The databases in the following list seem to have been modified from the original schema:

  • Data Source=moss2007ug;Initial Catalog=WSS_Content_c510ece1c03d4ec1875c4569e125f96b;Integrated Security=True;Enlist=False;Connect Timeout=15
  • Data Source=moss2007ug;Initial Catalog=SharePoint_AdminContent_2da7a517-e7e7-431a-a279-0722750e2fff;Integrated Security=True;Enlist=False;Connect Timeout=15

Please revert the modified database schema to the original state. If necessary, contact any software vendors who might have made this change because reversing the database schema could cause data loss. For more information about this rule, see KB article 954772 in the rule article list at http://go.microsoft.com/fwlink/?LinkID=120257.

 

 

Before you freak out, run in the 121bin directory> psconfig -cmd -upgrade –force

After the upgrade completed, I’m now again getting a clean bill of health.

Remove/Deactivate a missing feature for a cleaner upgrade

If you’re running across this blog it’s possible you’re missing a feature or working on upgrade.

There are multiple ways to detect missing features including the WssAnalyzeFeatures tool from MSDN and PreUpgradeCheck.  Check out Gilham’s blog on removing missing features for more detail and tools.

Stsadm –o Preupgradecheck (Installed with SharePoint 2007 SP2)

In Features you’ll find the ID (GUID) and the word “missing”

Snippet from preupgrade check .htm report:

Name = [Unknown], Feature id = [bbe9def7-2fe9-a0b1-d712-aa128c837ebe], Reference count = [1], Scope = [Web], Status = [Missing]

 

If the site is still working as it should and you just want to clean things up you can remove the feature.

First you can uninstall the feature (it has to be there to uninstall it, we’ll see that in a second.)

C:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions12BIN>stsadm -help uninstallfeature

stsadm.exe -o uninstallfeature
           {-filename <relative path to Feature.xml> |
            -name <feature folder> |
            -id <feature Id>}
           [-force]

C:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions12BIN>stsadm -o uninstallfeature -id bbe9def7-2fe9-a0b1-d712-aa128c837ebe

Feature with Id ‘bbe9def7-2fe9-a0b1-d712-aa128c837ebe’ is not installed in this farm. The feature was not uninstalled. Looks like by doing a search, this feature is related to the community kit blog.

 

If the feature is not installed on the farm, and you want to force remove the feature you can run stsadm to deactivate the feature.  More context to this error on William Wolfe’s blog.

C:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions12BIN>stsadm -help deactivatefeature

stsadm.exe -o deactivatefeature
           {-filename <relative path to Feature.xml> |
            -name <feature folder> |
            -id <feature Id>}
           [-url <url>]
           [-force]

C:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions12BIN>STSADM -o deactivatefeature -id bbe9def7-2fe9-a0b1-d712-aa128c837ebe

The feature with Id ‘bbe9def7-2fe9-a0b1-d712-aa128c837ebe’ is not currently installed. Use ‘force’ to deactivate it at this scope.

 

Let’s add the force parameter:

C:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions12BIN>STSADM -o deactivatefeature -id bbe9def7-2fe9-a0b1-d712-aa128c837ebe -force

Operation completed successfully.

 

Deactiviting this feature bbe9def7-2fe9-a0b1-d712-aa128c837ebe across all the web apps cleaned it up:  

Now I’ll rerun preupgradecheck and see that features are now all installed.  Our missing feature has been removed/deactivated (Dependency removed!).

FeatureInfo… Information Only – Now passed!

 

On an unrelated but related note, I’m seeing another missing feature of a different type… This one needs to be handled in a different way…

 

Re-running the upgrade I can still see it is missing a feature that’s not showing in preupgradecheck.  The scope is on a specific web.  I could pass in that web and try to deactivate it, so I’ll jump in the log to determine which database to look at. 

[FeatureInfo] [DEBUG] [8/12/2010 1:31:07 PM]: Searching for features in content database wss_content_joel…
[FeatureInfo] [DEBUG] [8/12/2010 1:31:07 PM]: Found 2 webs using feature definition 00bfea71-c796-4402-9f2f-0eb9a6e71b18 in content database wss_content_joel.
[FeatureInfo] [DEBUG] [8/12/2010 1:31:07 PM]: Found 2 webs using feature definition 00bfea71-5932-4f9c-ad71-1557e5751100 in content database wss_content_joel.
[FeatureInfo] [DEBUG] [8/12/2010 1:31:07 PM]: Found 2 webs using feature definition 00bfea71-a83e-497e-9ba0-7a5c597d0107 in content database wss_content_joel.
[FeatureInfo] [DEBUG] [8/12/2010 1:31:07 PM]: Found 2 webs using feature definition 00bfea71-4ea5-48d4-a4ad-7ea5c011abe5 in content database wss_content_joel.
[FeatureInfo] [DEBUG] [8/12/2010 1:31:08 PM]: Found 1 webs using feature definition fde5d850-671e-4143-950a-87b473922dc7 in content database wss_content_joel.
[FeatureInfo] [DEBUG] [8/12/2010 1:31:08 PM]: Found 2 webs using feature definition 00bfea71-d1ce-42de-9c63-a44004ce0104 in content database wss_content_joel.
[FeatureInfo] [DEBUG] [8/12/2010 1:31:08 PM]: Found 1 webs using missing feature definition bbe9def7-2fe9-a0b1-d712-aa128c837ebe in content database wss_content_joel.

 

Forcing the upgrade for SP2 still resulted in this error in the error log:

[SPManager] [ERROR] [8/12/2010 1:47:53 PM]: ReflexiveUpgrade [SPWebService Parent=SPFarm Name=SharePoint_Config] failed.
[SPManager] [ERROR] [8/12/2010 1:47:53 PM]: Feature ‘20477d83-8bdb-414e-964b-080637f7d99b’ is not installed in this farm, and can not be added to this scope.

This feature is a feature that should be on the farm and may have resulted from a WSS to MOSS conversion or db attach.

Total number of configuration settings run: 3
Total number of successful configuration settings: 2
Total number of unsuccessful configuration settings: 1
Successfully stopped the configuration of SharePoint Products and Technologies.
Configuration of SharePoint Products and Technologies failed.  Configuration must be performed before you use SharePoint Products and Technologies.  For further details, see the diagnostic log located at C:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions12LOGSPSCDiagnostics_8_12
_2010_13_56_13_669_1368454839.log and the application event log.

If you see this feature 20477d83-8bdb-414e-964b-080637f7d99b is missing and preventing your upgrade to SP2 or otherwise run the following:

First:

stsadm -o installfeature -name PublishingTimerJobs

Second:

stsadm.exe -o execadmsvcjobs

Finally:

psconfig -cmd upgrade -wait -inplace b2b

Total number of configuration settings run: 4
Total number of successful configuration settings: 4
Total number of unsuccessful configuration settings: 0
Successfully stopped the configuration of SharePoint Products and Technologies.
Configuration of the SharePoint Products and Technologies has succeeded.