smithsson68@gmail.com
Apr 11, 2012
visibility 12816
star star star star star
(8 votes)

Problems with XForms when upgrading to CMS 6 R2

It seems that many people have had problems when upgrading an EPiServer CMS site to 6 R2 with the last part of the upgrade script.

What this tries to do is read all the XForm definitions from the database, perform a html decode on the form name, and then save the definition back to the database. Why this has to be done is not relevant to this post.

What is relevant is that it often doesn’t work for various reasons. This part of the script is run in a separate transaction after the main upgrade transaction has completed. The reason for this is that it has to run in a separate application domain in the context of the website.

If your site doesn’t use XForms or if you know that there aren’t any forms that have names that required html encoding then you can just ignore this error. As mentioned above, the main upgrade has been committed and your site should be ready to go.

If however you do need to run this part of the script and it keeps failing then there is a simple workaround.

Here you will find an ASPX file which contains the same code as the script executes. Place it in your site, execute it (i.e. browse to it’s Url) and it will do the business. When it’s finished it will tell you how many XForms it’s upgraded. If for some reason it should fail or get interrupted, it is safe to run again as it will only upgrade those XForms that need it.

When all is done you can just remove the ASPX from the site.

Voilà

Apr 11, 2012

Comments

Apr 11, 2012 04:02 PM

Great stuff Paul, now we can upgrade databases without having to use EPiServer Deployment Centre - if you know where the SQL upgrade scripts are of course ;)

Masoud Memariani
Masoud Memariani Dec 9, 2013 12:23 PM

Hello Paul,

The link you provided for your script does not work. Can you please update the link?

Thank you!

Jun 13, 2014 11:38 AM

Please update the link

Jun 17, 2014 02:50 PM

Hi
Could you please update the link?

thanks!

//Pawel

Nitin Walawalkar
Nitin Walawalkar Jul 11, 2014 01:46 PM

I am unable to download the aspx page from the link

error Please login to comment.
Latest blogs
Finding Thomas Part 3 - The Moment of Recognition

Remember Thomas? In digital landscape, Thomas is the returning visitor who reads everything, opens every email, converts on nothing. In standard...

Ritu Madan | Jun 26, 2026

Add more scheduled job settings from the Optimizely CMS 12 admin UI -- with OptiScheduledJob.ExtraParameters

  Optimizely (EPiServer) CMS 12 ships a great scheduled-jobs framework, but it has one frustrating gap: a job has nowhere to store its own...

Binh Nguyen Thi | Jun 25, 2026

Automated Search & Navigation to Graph Migration with Claude Code

A Claude Code plugin that scans your S&N codebase, applies Graph SDK transformations, and validates the result. Install once, run one command. CMS ...

Connor Fortin | Jun 24, 2026

Migrating from Find to Graph: Lessons Learned from a Real CMS 13 Project

While migrating a search solution from Optimizely Search & Navigation (Find) to Optimizely Graph in CMS 13, I encountered several issues that were...

Binh Nguyen Thi | Jun 24, 2026

Optimizely: Upgrade Opti-ID and .NET 10 in CMS 12

Many Optimizely customers are planning their roadmap around a future migration to Optimizely CMS 13. As a result, upgrades such as Opti ID adoption...

Madhu | Jun 23, 2026 |

Understanding Optimizely Graph: Caching, Webhooks & Avoiding Stale Content (Optimizely SaaS CMS)

📌 Scope: This post covers Optimizely CMS (SaaS) only — using the official @optimizely/cms-sdk and @optimizely/cms-cli packages with Next.js 15. If...

Kiran Patil | Jun 23, 2026 |