|
Hi Prabhu,
the rolling file sinks should not suffer from data loss. The reason is the following: The checkpointed state, bucket state, contains the current file, the offset and all pending file which are ready to be moved. Once a checkpoint is completed, the notifyCheckpointComplete method is called. In this method, the pending files are moved to their final position. If a failure occurs before the notifyCheckpointComplete method or while moving the files, then it is correct that not all pending files have been moved. However, upon recovery, the rolling file sink receives its bucket state which contains the list of all pending files. Now it checks for every file whether it has been already moved or not. If a file wasn’t moved yet, then it would be moved it now. That’s why the system can guarantee that you won’t lose any data.
Cheers, Till
|