void rollFSImage(CheckpointSignature sig) throws IOException {
    long start = System.nanoTime();
    sig.validateStorageInfo(this.storage);

    saveDigestAndRenameCheckpointImage(sig.mostRecentCheckpointTxId,
        sig.imageDigest);

    long rollTime = DFSUtil.getElapsedTimeMicroSeconds(start);
    if (metrics != null) {
      metrics.rollFsImageTime.inc(rollTime);
    }
  }
void rollFSImage ( CheckpointSignature sig ) throws IOException { long start = System . nanoTime ( ) ; sig . validateStorageInfo ( this . storage ) ; saveDigestAndRenameCheckpointImage ( sig . mostRecentCheckpointTxId , sig . imageDigest ) ; long rollTime = DFSUtil . getElapsedTimeMicroSeconds ( start ) ; if ( metrics != null ) { metrics . rollFsImageTime . inc ( rollTime ) ; } }
End checkpoint.
Validate the current storage info with the given signature.

@param sig to validate the current storage info against
@throws IOException if the checkpoint fields are inconsistent