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


Java DFSUtil.byteArray2PathString方法代码示例

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


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

示例1: loadFullNameINodes

import org.apache.hadoop.hdfs.DFSUtil; //导入方法依赖的package包/类
/**
 * load fsimage files assuming full path names are stored
 * 
 * @param numFiles total number of files to load
 * @param in data input stream
 * @param counter Counter to increment for namenode startup progress
 * @throws IOException if any error occurs
 */
private void loadFullNameINodes(long numFiles, DataInput in, Counter counter)
    throws IOException {
  byte[][] pathComponents;
  byte[][] parentPath = {{}};      
  FSDirectory fsDir = namesystem.dir;
  INodeDirectory parentINode = fsDir.rootDir;
  for (long i = 0; i < numFiles; i++) {
    pathComponents = FSImageSerialization.readPathComponents(in);
    for (int j=0; j < pathComponents.length; j++) {
      byte[] newComponent = renameReservedComponentOnUpgrade
          (pathComponents[j], getLayoutVersion());
      if (!Arrays.equals(newComponent, pathComponents[j])) {
        String oldPath = DFSUtil.byteArray2PathString(pathComponents);
        pathComponents[j] = newComponent;
        String newPath = DFSUtil.byteArray2PathString(pathComponents);
        LOG.info("Renaming reserved path " + oldPath + " to " + newPath);
      }
    }
    final INode newNode = loadINode(
        pathComponents[pathComponents.length-1], false, in, counter);

    if (isRoot(pathComponents)) { // it is the root
      // update the root's attributes
      updateRootAttr(newNode.asDirectory());
      continue;
    }

    namesystem.dir.addToInodeMap(newNode);
    // check if the new inode belongs to the same parent
    if(!isParent(pathComponents, parentPath)) {
      parentINode = getParentINodeDirectory(pathComponents);
      parentPath = getParent(pathComponents);
    }

    // add new inode
    addToParent(parentINode, newNode);
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:47,代码来源:FSImageFormat.java

示例2: getPath

import org.apache.hadoop.hdfs.DFSUtil; //导入方法依赖的package包/类
/** @return the full path in string form */
public String getPath() {
  return DFSUtil.byteArray2PathString(path);
}
 
开发者ID:naver,项目名称:hadoop,代码行数:5,代码来源:INodesInPath.java


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