Upgrades and database

You can choose to ignore database downgrade exceptions. The main benefit of this feature is when you upgrade a website that is hosted in load balanced environment. It allows you to upgrade one of the instances and its database model, while the other instance can continue to run without throwing an exception. 

When you upgrade a Sitefinity CMS project, it automatically upgrades the database that it is connected to.
You can see all changes that the upgrade performed on the database in the UpgradeTrace.log, located in the ~\App_Data\Sitefinity\Logs folder of you project. For more information, see Log changes to the database during upgrades.
This information is also displayed during the site upgrade on the detailed application status page. For more information, see Types of application status pages.

When you connect an older Sitefinity CMS project to a newer database, an exception that downgrade is not allowed is thrown. You can control this behavior using the IgnoreDowngradeExceptions configuration property of the connection string, which is located in file ~\App_Data\Sitefinity\Configurations\DataConfig.config. Exceptions are thrown when the value of the property is false. This is the default value, because downgrades are not supported. 

If IgnoreDowngradeExceptions is set to true, those exceptions are not thrown and the application will attempt to run. If there are no breaking database model changes, between the older and newer version, on the requested page, then the application will run successfully. For example, if there is a News widget on the page and there are no breaking changes in the news database model, the page will run successfully. If there are breaking model changes, the page will fail to run.

IMPORTANT: You must use this property only when you upgrade the nodes of a load-balanced configuration. You set IgnoreDowngradeExceptions to true only on the servers that are not yet upgraded, so that no error is thrown while you are upgrading. Before you start to upgrade a node, you must set the setting to false. After the upgrade of all nodes finishes, the setting must be set to false on all of them.

Increase your Sitefinity skills by signing up for our free trainings. Get Sitefinity-certified at Progress Education Community to boost your credentials.

Get started with Integration Hub | Sitefinity Cloud | Sitefinity SaaS

This free lesson teaches administrators, marketers, and other business professionals how to use the Integration hub service to create automated workflows between Sitefinity and other business systems.

Web Security for Sitefinity Administrators

This free lesson teaches administrators the basics about protecting yor Sitefinity instance and its sites from external threats. Configure HTTPS, SSL, allow lists for trusted sites, and cookie security, among others.

Foundations of Sitefinity ASP.NET Core Development

The free on-demand video course teaches developers how to use Sitefinity .NET Core and leverage its decoupled architecture and new way of coding against the platform.

Was this article helpful?