You can configure a session to resume from the last checkpoint when transformations in the session produce the same data between the session and recovery run. All transformations have properties that determine if the transformation can produce repeatable data. A transformation can produce the same data between a session and recovery run if the output is deterministic and the output is repeatable.
If you configure a transformation as repeatable and deterministic, it is your responsibility to ensure that the data is repeatable. If you try to recover a session with transformations that do not generate repeatable and deterministic data, the recovery process can result in corrupted data.