Introduction

One of the key things that are a top priority in the development of Configuration Manager is to guarantee the target system's consistency after a snapshot deployment. To achieve this CMJ needs to properly handle any situation, e.g. if an unexpected error occurs, and make sure either the whole configuration was deployed or none of it in a transactional manner.

In version 3.6 CMJ introduced a custom roll-back strategy in case a snapshot deployment fails.

The problem

Until version 3.5.x CMJ relied on Jira's native transactions to rollback the uncommitted changes and all changes from deployment were performed within a single transaction. However, this leads to several major problems for larger deployments:

The solution

CMJ implements a rollback strategy that will revert all configuration changes in the case of an error and leave the system in the initial state (before the deployment was started).

Deployment cancellation

The rollback occurs only when CMJ has detected configuration errors. So, be aware that once the issue data import process has been initiated, you won’t be able to cancel it or roll it back.