Design Manager fatal bug: deleted site columns.

Introduction

Update 2013-09-07: The SharePoint Server 2013 CU of August 2013 and KB 2817607 seem to (partly) address the issue described in this article. If you tried and tested the update it let me know! From the support site:

When you export a design package from a SharePoint Server 2013 site, some out-of-box (OOB) fields are missing from the content types.
/end update

The last few weeks on our project have been a pain. Site columns were disappearing, content types lost fields, publishing features would not activate and ULS errors:  ‘Failed to create the ‘Pages’ library’. The whole site collection felt unstable and threw the weirdest  errors towards us.  We were baffled until the we found the problem.

The man on trial? Design Manager!

The setup

The setup of our project is pretty standard. A few content types, inheriting from article page, deployed with a feature created in Visual Studio 2012. A master page, page layouts, CSS and JavaScript packaged in a design package using the SP2013 Design Manager. No big deal.

At first it worked perfectly but after a few weeks the publishing feature began to act weird. It was impossible to (re)activate the Publishing feature. The activation was throwing exceptions ( ‘Failed to create the ‘Pages’ library’) and we noticed we were missing site columns and fields in our content types and lists. The first to blame was, of course, a developers dirty code.

The accused.

After hours of troubleshooting we were able to pin down the problem to Design Manager. The problem occurs when you remove a design package that has page layouts configured with an associated (custom) content type. If you do this, all hell breaks lose. SharePoint starts to delete site columns, adjusts content types and your SharePoint setup is ready for the garbage bin.

You know you are in trouble when the Title field on the default Item content type is gone.

Error01

To reproduce

  1. Create a new site collection based upon the publishing template
  2. Deploy your custom content types first
  3. Go to Design Manager and upload your design package.
    My design package contains page layouts with an associated content type
    dmStep1
  4. Make an update and create a second version of your design package.
  5. Upload this second version to your environment as well
  6. You now have 2 design packages installed
    Go to Site Settings -> Web Designer Galleries -> Solutions
    dmStep2
  7. Here it comes.
    Deactivate the old design package and activate the new version
  8. Delete the old version

And that’s it.

The errors

Here an overview of the errors introduced by this SP2013 Design Manager error.

Error 1

If you go to your document or item content type. You notice that the Title field is gone.

Error01

Error 2

An other indication is Site Settings -> Look and Feel -> Page Layouts and site templates. In the ‘New Page Default Settings’ all the associated content types have value ‘Invalid Associated Content Type’.
dmStep3

Error 3

Reactivating the Publishing feature returned errors stating ‘Failed to created pages library’ while the pages library is already there.

dmStep4

Error 4

The ‘page layout content’ types are gone.

Error04

Error 5

The ULS logs contain the following error:

Event log message was: 'Failed to create the 'Pages' library.'. Exception was: 'Microsoft.SharePoint.SPException: Content type '0x010100C568DB52D9D0A14D9B2FDCC96666E9F2007948130EC3DB064584E219954237AF39' not found in web 'http://wingtipserver/sites/test6'.
at Microsoft.SharePoint.Publishing.CommonUtilities.GetContentType(SPWeb web, SPContentTypeId contentTypeId)
at Microsoft.SharePoint.Publishing.Internal.AreaProvisioner.CreatePagesDocumentLibrary(SPList approvalTaskList)'

At this point your SharePoint is missing critical components. As stated above this breaks default SharePoint functionality. I consider this error a major bug in SharePoint 2013. A designer can do major damage to your production setup by simply using default out-of-the-box functionality.

Conclusion

My advise is: do not use the Design Manager to package your files! I still like Design Manager but I copy the generated master pages and page layouts in a Visual Studio solution and deploy the solution.

I don’t dare to count the hours we lost on this error. Is it wise to deploy this corrupt content database on a production server? I do not think so. So I’m afraid our content editors have to redo all their work as well.

The only thing I can do is reach out to the community and warn everybody. Hopefully it helps at least some. If anybody has more information about this bug… contact me!

Some other references

http://social.technet.microsoft.com/Forums/sharepoint/en-US/73c5fb6b-c346-4b7e-bef2-74865d05d1c5/importing-a-design-package-corrupts-the-page-content-type

http://sharepointannoyances.wordpress.com/2013/05/10/careful-when-you-import-that-design-manager-package-part-2/comment-page-1/#comment-17

http://www.bondbyte.com/Blog/tabid/55/EntryId/24/SharePoint-2013-Design-Packages-broken.aspx

5 Comments

  1. Venkatesh Kadiri

    September 20, 2013

    Love this article….. No where i found this lucid explanation on this error…… Hope this will save my day… Encountered this problem on Dev environment……

  2. Venkatesh Kadiri

    September 20, 2013

    I have got this problem by uploading a sandbox solution which has just one Web Provisioned Event Receiver to apply top site master pages and css on sub sites when it’s created. And a feature that includes this event.
    I have not uploaded any design package. You have any idea why this error has come in this context…..

  3. Ulrich

    December 9, 2013

    I’m having a similar issue. August 2013 CU fixes some of these issue regarding missing columns in content types. But after applying August CU, I can’t create new subsites because Microsoft still uses ColName in some cases. Take a look at this: http://shawnpoint.wordpress.com/2013/12/02/sharepoint-site-column-defination-with-colname/ (Not my site). This is the next problem users of Design Manager is going to face.

    I agree with your conclusion. Use design manager for testing. But for production, create your own package from scratch in VS.

  4. shewrite63

    April 3, 2014

    Glad to have found this post about SharePoint Design Manager being the cause for many peoples’ frustrations.

    Not that I’m glad other people are frustrated but glad that we have finally found the cause – and yes, misery loves company. Too bad it came too late and we have to rework things.

    I’m more of an out of the box kinda gal. Things worked just fine, thank you! No high maintenance. No problems.

  5. yamakake

    May 9, 2014

    Thanks for the article! We found similar problems (messed up columns, Quick Edit “New Item” not working, etc.), with Design Manager being the culprit.

    Unfortunately, we went down the Designer path and are now facing the “redo a lot of work” stage. There are definitely countless hours that have been/will be wasted. Fortunately, we are also at the early stages in pilot, so damage is “limited”; I couldn’t imagine how bad this would be if we were 6 months down the road and we discovered these problems then.

    Thought we would be safe by using “OOTB”…but I guess the reality is Microsoft can’t get even get OOTB right (at least not the first time). :(

Comments are closed. ×

Share Your Thoughts