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.

 

Was this article helpful?