Upgrade from 7 to 8 hangs on first page load.

Paul Cripps asked on January 17, 2018 10:24

I have converted a Kentico 7 site to Kentico 8 site. I have managed to successfully upgrade my test UAT and staging environments.

I am now trying to upgrade the live environment.

On the first load the page hangs. After adding some additional logging to the UpgradeProcedure.cs code I can see that the upgrade stops whilst upgrading the macros. Many macros are upgraded but then it just hangs (I waited several hours). No error is added to the event log and that additional event log information I added to show that the process was complete do not appear in the log.

The line of code it is hanging on in UpgradeMacros() is: MacroCompatibility.TransformToDataMacros(ObjectTypeManager.ObjectTypesWithMacros);

Correct Answer

Michal Samuhel answered on January 17, 2018 16:33

Hi Paul,

Upgdate of macro signature can take very long time during upgrade to v8. Depending on number of objects(pages, contacts etc.) this can take very long time as each DB field is evaluated for macro existence and if it is found, macro signature is updated.

There is tweaked upgrade procedure class, that excludes OM tables and objects from this process. This class and procedure run is last part of upgrade executed at first request to application. You can find the procedure at:


It is not something that is officially supported, but it can be used to speed up this process and if you know what objects to exclude, you can extend list in this class even further. OM objects are excluded since they do not contain macros and there can be lot of contacts with number of fields that would otherwise be processed by UpgradeMacros method.

0 votesVote for this answer Unmark Correct answer

Recent Answers

Paul Cripps answered on January 17, 2018 17:54

Many thanks, the revised procedure works. We have 5 years worth of analytics data so it probably was searching through those tables.

0 votesVote for this answer Mark as a Correct answer

   Please, sign in to be able to submit a new answer.