Checkpoints will start to fail and the NameNode will not be able to manually saveNamespace if the following set of steps occurs:
- A zero-length file appears in a snapshot
- That file is later lengthened to include at least one block
- That file is subsequently deleted from the present file system but remains in the snapshot
More details in the first comment.