For several years checkpoints have been available in SSIS as a means of managing data consistency and restartability of a package. One of the options to configure checkpoints is to set the package's `CheckpointUsage` property to `always`. However, I've never seen a case for using this option. Does anyone know an application for this option, whether in theory or (even better) in practice?
I am unaware of a use case for Checkpoints: Always. When I have used checkpoints in the past, I've used IfExists. I discourage SSIS developers from using checkpoints and package restartability. I haven't looked at checkpoints in a while, but my old reasons for not using them were: 1. Checkpoints do not remember variable state. This is particularly worrisome when using Loop Containers. 2. Checkpoints stop recording successful executable completion once an error is detected. Long-running concurrent executables may be unnecessarily restarted on the next execution. This could cause duplication of effort and, perhaps, data. Instead, I recommend writing small, decoupled SSIS packages whenever possible and executing them via an SSIS framework.