当前位置: 首页>>代码示例>>Java>>正文


Java Storage.STORAGE_DIR_CURRENT属性代码示例

本文整理汇总了Java中org.apache.hadoop.hdfs.server.common.Storage.STORAGE_DIR_CURRENT属性的典型用法代码示例。如果您正苦于以下问题:Java Storage.STORAGE_DIR_CURRENT属性的具体用法?Java Storage.STORAGE_DIR_CURRENT怎么用?Java Storage.STORAGE_DIR_CURRENT使用的例子?那么, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在org.apache.hadoop.hdfs.server.common.Storage的用法示例。


在下文中一共展示了Storage.STORAGE_DIR_CURRENT属性的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: checkResultBlockPool

/**
 * For block pool, verify that the current and/or previous exist as indicated
 * by the method parameters.  If previous exists, verify that
 * it hasn't been modified by comparing the checksum of all it's
 * containing files with their original checksum.  It is assumed that
 * the server has recovered.
 * @param baseDirs directories pointing to block pool storage
 * @param bpid block pool Id
 * @param currentShouldExist current directory exists under storage
 * @param currentShouldExist previous directory exists under storage
 */
void checkResultBlockPool(String[] baseDirs, boolean currentShouldExist,
    boolean previousShouldExist) throws IOException
{
  if (currentShouldExist) {
    for (int i = 0; i < baseDirs.length; i++) {
      File bpCurDir = new File(baseDirs[i], Storage.STORAGE_DIR_CURRENT);
      assertEquals(UpgradeUtilities.checksumContents(DATA_NODE, bpCurDir,
              false), UpgradeUtilities.checksumMasterBlockPoolContents());
    }
  }
  if (previousShouldExist) {
    for (int i = 0; i < baseDirs.length; i++) {
      File bpPrevDir = new File(baseDirs[i], Storage.STORAGE_DIR_PREVIOUS);
      assertTrue(bpPrevDir.isDirectory());
      assertEquals(
                   UpgradeUtilities.checksumContents(DATA_NODE, bpPrevDir,
                   false), UpgradeUtilities.checksumMasterBlockPoolContents());
    }
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:31,代码来源:TestDFSStorageStateRecovery.java

示例2: corruptFSImageMD5

/**
 * Corrupts the MD5 sum of the fsimage.
 * 
 * @param corruptAll
 *          whether to corrupt one or all of the MD5 sums in the configured
 *          namedirs
 * @throws IOException
 */
private void corruptFSImageMD5(boolean corruptAll) throws IOException {
  List<URI> nameDirs = (List<URI>)FSNamesystem.getNamespaceDirs(config);
  // Corrupt the md5 files in all the namedirs
  for (URI uri: nameDirs) {
    // Directory layout looks like:
    // test/data/dfs/nameN/current/{fsimage,edits,...}
    File nameDir = new File(uri.getPath());
    File dfsDir = nameDir.getParentFile();
    assertEquals(dfsDir.getName(), "dfs"); // make sure we got right dir
    // Set the md5 file to all zeros
    File imageFile = new File(nameDir,
        Storage.STORAGE_DIR_CURRENT + "/"
        + NNStorage.getImageFileName(0));
    MD5FileUtils.saveMD5File(imageFile, new MD5Hash(new byte[16]));
    // Only need to corrupt one if !corruptAll
    if (!corruptAll) {
      break;
    }
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:28,代码来源:TestStartup.java

示例3: getTrashDirectoryForBlockFile

/**
 * Test conversion from a block file path to its target trash
 * directory.
 */
public void getTrashDirectoryForBlockFile(String fileName, int nestingLevel) {
  final String blockFileSubdir = makeRandomBlockFileSubdir(nestingLevel);
  final String blockFileName = fileName;

  String testFilePath =
      storage.getSingularStorageDir().getRoot() + File.separator +
          Storage.STORAGE_DIR_CURRENT +
          blockFileSubdir + blockFileName;

  String expectedTrashPath =
      storage.getSingularStorageDir().getRoot() + File.separator +
          BlockPoolSliceStorage.TRASH_ROOT_DIR +
          blockFileSubdir.substring(0, blockFileSubdir.length() - 1);

  LOG.info("Got subdir " + blockFileSubdir);
  LOG.info("Generated file path " + testFilePath);
  assertThat(storage.getTrashDirectory(new File(testFilePath)), is(expectedTrashPath));
}
 
开发者ID:naver,项目名称:hadoop,代码行数:22,代码来源:TestBlockPoolSliceStorage.java

示例4: getRestoreDirectoryForBlockFile

public void getRestoreDirectoryForBlockFile(String fileName, int nestingLevel) {
  BlockPoolSliceStorage storage = makeBlockPoolStorage();
  final String blockFileSubdir = makeRandomBlockFileSubdir(nestingLevel);
  final String blockFileName = fileName;

  String deletedFilePath =
      storage.getSingularStorageDir().getRoot() + File.separator +
      BlockPoolSliceStorage.TRASH_ROOT_DIR +
      blockFileSubdir + blockFileName;

  String expectedRestorePath =
      storage.getSingularStorageDir().getRoot() + File.separator +
          Storage.STORAGE_DIR_CURRENT +
          blockFileSubdir.substring(0, blockFileSubdir.length() - 1);

  LOG.info("Generated deleted file path " + deletedFilePath);
  assertThat(storage.getRestoreDirectory(new File(deletedFilePath)),
             is(expectedRestorePath));

}
 
开发者ID:naver,项目名称:hadoop,代码行数:20,代码来源:TestBlockPoolSliceStorage.java

示例5: createBlockPoolVersionFile

public static void createBlockPoolVersionFile(File bpDir,
    StorageInfo version, String bpid) throws IOException {
  // Create block pool version files
  if (DataNodeLayoutVersion.supports(
      LayoutVersion.Feature.FEDERATION, version.layoutVersion)) {
    File bpCurDir = new File(bpDir, Storage.STORAGE_DIR_CURRENT);
    BlockPoolSliceStorage bpStorage = new BlockPoolSliceStorage(version,
        bpid);
    File versionFile = new File(bpCurDir, "VERSION");
    StorageDirectory sd = new StorageDirectory(bpDir);
    bpStorage.writeProperties(versionFile, sd);
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:13,代码来源:UpgradeUtilities.java

示例6: main

/**
 * @param args arguments
 * @throws IOException 
 */
public static void main(String[] args)  throws IOException {
  long startingBlockId = 1;
  int numFiles = 0;
  short replication = 1;
  int numBlocksPerFile = 0;
  long blockSize = 10;

  if (args.length == 0) {
    printUsageExit();
  }

  for (int i = 0; i < args.length; i++) { // parse command line
    if (args[i].equals("-h"))
      printUsageExit();
    if (args[i].equals("-f")) {
     if (i + 3 >= args.length || args[i+1].startsWith("-") || 
         args[i+2].startsWith("-") || args[i+3].startsWith("-")) {
       printUsageExit(
           "Missing num files, starting block and/or number of blocks");
     }
     numFiles = Integer.parseInt(args[++i]);
     startingBlockId = Integer.parseInt(args[++i]);
     numBlocksPerFile = Integer.parseInt(args[++i]);
     if (numFiles <=0 || numBlocksPerFile <= 0) {
       printUsageExit("numFiles and numBlocksPerFile most be greater than 0");
     }
    } else if (args[i].equals("-l")) {
      if (i + 1 >= args.length) {
        printUsageExit(
            "Missing block length");
      }
      blockSize = Long.parseLong(args[++i]);
    } else if (args[i].equals("-r") || args[i+1].startsWith("-")) {
      if (i + 1 >= args.length) {
        printUsageExit(
            "Missing replication factor");
      }
      replication = Short.parseShort(args[++i]);
    } else if (args[i].equals("-d")) {
      if (i + 1 >= args.length || args[i+1].startsWith("-")) {
        printUsageExit("Missing edits logs directory");
      }
      edits_dir = args[++i];
    } else {
      printUsageExit();
    }
  }
  

  File editsLogDir = new File(edits_dir);
  File subStructureDir = new File(edits_dir + "/" + 
      Storage.STORAGE_DIR_CURRENT);
  if ( !editsLogDir.exists() ) {
    if ( !editsLogDir.mkdir()) {
      System.out.println("cannot create " + edits_dir);
      System.exit(-1);
    }
  }
  if ( !subStructureDir.exists() ) {
    if ( !subStructureDir.mkdir()) {
      System.out.println("cannot create subdirs of " + edits_dir);
      System.exit(-1);
    }
  }
  

  FileNameGenerator nameGenerator = new FileNameGenerator(BASE_PATH, 100);
  FSEditLog editLog = FSImageTestUtil.createStandaloneEditLog(editsLogDir);
  editLog.openForWrite();
  addFiles(editLog, numFiles, replication, numBlocksPerFile, startingBlockId,
           blockSize, nameGenerator);
  editLog.logSync();
  editLog.close();
}
 
开发者ID:naver,项目名称:hadoop,代码行数:78,代码来源:CreateEditsLog.java

示例7: main

/**
 * @param args arguments
 * @throws IOException 
 */
public static void main(String[] args)  throws IOException {
  long startingBlockId = 1;
  int numFiles = 0;
  short replication = 1;
  int numBlocksPerFile = 0;
  long blockSize = 10;

  if (args.length == 0) {
    printUsageExit();
  }

  for (int i = 0; i < args.length; i++) { // parse command line
    if (args[i].equals("-h"))
      printUsageExit();
    if (args[i].equals("-f")) {
     if (i + 3 >= args.length || args[i+1].startsWith("-") || 
         args[i+2].startsWith("-") || args[i+3].startsWith("-")) {
       printUsageExit(
           "Missing num files, starting block and/or number of blocks");
     }
     numFiles = Integer.parseInt(args[++i]);
     startingBlockId = Integer.parseInt(args[++i]);
     numBlocksPerFile = Integer.parseInt(args[++i]);
     if (numFiles <=0 || numBlocksPerFile <= 0) {
       printUsageExit("numFiles and numBlocksPerFile most be greater than 0");
     }
    } else if (args[i].equals("-l")) {
      if (i + 1 >= args.length) {
        printUsageExit(
            "Missing block length");
      }
      blockSize = Long.parseLong(args[++i]);
    } else if (args[i].equals("-r") || args[i+1].startsWith("-")) {
      if (i + 1 >= args.length) {
        printUsageExit(
            "Missing replication factor");
      }
      replication = Short.parseShort(args[++i]);
    } else if (args[i].equals("-d")) {
      if (i + 1 >= args.length || args[i+1].startsWith("-")) {
        printUsageExit("Missing edits logs directory");
      }
      edits_dir = args[++i];
    } else {
      printUsageExit();
    }
  }
  

  File editsLogDir = new File(edits_dir);
  File subStructureDir = new File(edits_dir + "/" + 
      Storage.STORAGE_DIR_CURRENT);
  if ( !editsLogDir.exists() ) {
    if ( !editsLogDir.mkdir()) {
      System.out.println("cannot create " + edits_dir);
      System.exit(-1);
    }
  }
  if ( !subStructureDir.exists() ) {
    if ( !subStructureDir.mkdir()) {
      System.out.println("cannot create subdirs of " + edits_dir);
      System.exit(-1);
    }
  }
  

  FileNameGenerator nameGenerator = new FileNameGenerator(BASE_PATH, 100);
  FSEditLog editLog = FSImageTestUtil.createStandaloneEditLog(editsLogDir);
  editLog.openForWrite(NameNodeLayoutVersion.CURRENT_LAYOUT_VERSION);
  addFiles(editLog, numFiles, replication, numBlocksPerFile, startingBlockId,
           blockSize, nameGenerator);
  editLog.logSync();
  editLog.close();
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:78,代码来源:CreateEditsLog.java

示例8: getDNCurrentDir

/**
 * Get current directory corresponding to the datanode as defined in
 * (@link Storage#STORAGE_DIR_CURRENT}
 * @param storageDir the storage directory of a datanode.
 * @return the datanode current directory
 */
public static String getDNCurrentDir(File storageDir) {
  return storageDir + "/" + Storage.STORAGE_DIR_CURRENT + "/";
}
 
开发者ID:naver,项目名称:hadoop,代码行数:9,代码来源:MiniDFSCluster.java


注:本文中的org.apache.hadoop.hdfs.server.common.Storage.STORAGE_DIR_CURRENT属性示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。