Java Code Examples for org.apache.hadoop.io.MD5Hash#equals()

The following examples show how to use org.apache.hadoop.io.MD5Hash#equals() . You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: FSImage.java    From hadoop with Apache License 2.0 6 votes vote down vote up
/**
 * Load in the filesystem image from file. It's a big list of
 * filenames and blocks.
 */
private void loadFSImage(File curFile, MD5Hash expectedMd5,
    FSNamesystem target, MetaRecoveryContext recovery,
    boolean requireSameLayoutVersion) throws IOException {
  // BlockPoolId is required when the FsImageLoader loads the rolling upgrade
  // information. Make sure the ID is properly set.
  target.setBlockPoolId(this.getBlockPoolID());

  FSImageFormat.LoaderDelegator loader = FSImageFormat.newLoader(conf, target);
  loader.load(curFile, requireSameLayoutVersion);

  // Check that the image digest we loaded matches up with what
  // we expected
  MD5Hash readImageMd5 = loader.getLoadedImageMd5();
  if (expectedMd5 != null &&
      !expectedMd5.equals(readImageMd5)) {
    throw new IOException("Image file " + curFile +
        " is corrupt with MD5 checksum of " + readImageMd5 +
        " but expecting " + expectedMd5);
  }

  long txId = loader.getLoadedImageTxId();
  LOG.info("Loaded image for txid " + txId + " from " + curFile);
  lastAppliedTxId = txId;
  storage.setMostRecentCheckpointInfo(txId, curFile.lastModified());
}
 
Example 2
Source File: FSImage.java    From big-c with Apache License 2.0 6 votes vote down vote up
/**
 * Load in the filesystem image from file. It's a big list of
 * filenames and blocks.
 */
private void loadFSImage(File curFile, MD5Hash expectedMd5,
    FSNamesystem target, MetaRecoveryContext recovery,
    boolean requireSameLayoutVersion) throws IOException {
  // BlockPoolId is required when the FsImageLoader loads the rolling upgrade
  // information. Make sure the ID is properly set.
  target.setBlockPoolId(this.getBlockPoolID());

  FSImageFormat.LoaderDelegator loader = FSImageFormat.newLoader(conf, target);
  loader.load(curFile, requireSameLayoutVersion);

  // Check that the image digest we loaded matches up with what
  // we expected
  MD5Hash readImageMd5 = loader.getLoadedImageMd5();
  if (expectedMd5 != null &&
      !expectedMd5.equals(readImageMd5)) {
    throw new IOException("Image file " + curFile +
        " is corrupt with MD5 checksum of " + readImageMd5 +
        " but expecting " + expectedMd5);
  }

  long txId = loader.getLoadedImageTxId();
  LOG.info("Loaded image for txid " + txId + " from " + curFile);
  lastAppliedTxId = txId;
  storage.setMostRecentCheckpointInfo(txId, curFile.lastModified());
}
 
Example 3
Source File: MD5FileUtils.java    From hadoop with Apache License 2.0 5 votes vote down vote up
/**
 * Verify that the previously saved md5 for the given file matches
 * expectedMd5.
 * @throws IOException 
 */
public static void verifySavedMD5(File dataFile, MD5Hash expectedMD5)
    throws IOException {
  MD5Hash storedHash = readStoredMd5ForFile(dataFile);
  // Check the hash itself
  if (!expectedMD5.equals(storedHash)) {
    throw new IOException(
        "File " + dataFile + " did not match stored MD5 checksum " +
        " (stored: " + storedHash + ", computed: " + expectedMD5);
  }
}
 
Example 4
Source File: MD5FileUtils.java    From big-c with Apache License 2.0 5 votes vote down vote up
/**
 * Verify that the previously saved md5 for the given file matches
 * expectedMd5.
 * @throws IOException 
 */
public static void verifySavedMD5(File dataFile, MD5Hash expectedMD5)
    throws IOException {
  MD5Hash storedHash = readStoredMd5ForFile(dataFile);
  // Check the hash itself
  if (!expectedMD5.equals(storedHash)) {
    throw new IOException(
        "File " + dataFile + " did not match stored MD5 checksum " +
        " (stored: " + storedHash + ", computed: " + expectedMD5);
  }
}
 
Example 5
Source File: FSImage.java    From RDFS with Apache License 2.0 5 votes vote down vote up
/**
 * Moves fsimage.ckpt to fsImage and edits.new to edits
 * Reopens the new edits file.
 * 
 * @param newImageSignature the signature of the new image
 */
void rollFSImage(CheckpointSignature newImageSignature) throws IOException {
  MD5Hash newImageDigest = newImageSignature.getImageDigest();
  if (!newImageDigest.equals(checkpointImageDigest)) {
    throw new IOException(
        "Checkpoint image is corrupt: expecting an MD5 checksum of" +
        newImageDigest + " but is " + checkpointImageDigest);
  }
  rollFSImage(newImageSignature.getImageDigest());
}