Java 类org.apache.hadoop.hdfs.server.namenode.INodeReference.WithName 实例源码

项目:hadoop    文件:FSImageFormatPBSnapshot.java   
private INodeReference loadINodeReference(
    INodeReferenceSection.INodeReference r) throws IOException {
  long referredId = r.getReferredId();
  INode referred = fsDir.getInode(referredId);
  WithCount withCount = (WithCount) referred.getParentReference();
  if (withCount == null) {
    withCount = new INodeReference.WithCount(null, referred);
  }
  final INodeReference ref;
  if (r.hasDstSnapshotId()) { // DstReference
    ref = new INodeReference.DstReference(null, withCount,
        r.getDstSnapshotId());
  } else {
    ref = new INodeReference.WithName(null, withCount, r.getName()
        .toByteArray(), r.getLastSnapshotId());
  }
  return ref;
}
项目:aliyun-oss-hadoop-fs    文件:FSImageFormatPBSnapshot.java   
private INodeReference loadINodeReference(
    INodeReferenceSection.INodeReference r) throws IOException {
  long referredId = r.getReferredId();
  INode referred = fsDir.getInode(referredId);
  WithCount withCount = (WithCount) referred.getParentReference();
  if (withCount == null) {
    withCount = new INodeReference.WithCount(null, referred);
  }
  final INodeReference ref;
  if (r.hasDstSnapshotId()) { // DstReference
    ref = new INodeReference.DstReference(null, withCount,
        r.getDstSnapshotId());
  } else {
    ref = new INodeReference.WithName(null, withCount, r.getName()
        .toByteArray(), r.getLastSnapshotId());
  }
  return ref;
}
项目:big-c    文件:FSImageFormatPBSnapshot.java   
private INodeReference loadINodeReference(
    INodeReferenceSection.INodeReference r) throws IOException {
  long referredId = r.getReferredId();
  INode referred = fsDir.getInode(referredId);
  WithCount withCount = (WithCount) referred.getParentReference();
  if (withCount == null) {
    withCount = new INodeReference.WithCount(null, referred);
  }
  final INodeReference ref;
  if (r.hasDstSnapshotId()) { // DstReference
    ref = new INodeReference.DstReference(null, withCount,
        r.getDstSnapshotId());
  } else {
    ref = new INodeReference.WithName(null, withCount, r.getName()
        .toByteArray(), r.getLastSnapshotId());
  }
  return ref;
}
项目:hadoop-2.6.0-cdh5.4.3    文件:FSImageFormatPBSnapshot.java   
private INodeReference loadINodeReference(
    INodeReferenceSection.INodeReference r) throws IOException {
  long referredId = r.getReferredId();
  INode referred = fsDir.getInode(referredId);
  WithCount withCount = (WithCount) referred.getParentReference();
  if (withCount == null) {
    withCount = new INodeReference.WithCount(null, referred);
  }
  final INodeReference ref;
  if (r.hasDstSnapshotId()) { // DstReference
    ref = new INodeReference.DstReference(null, withCount,
        r.getDstSnapshotId());
  } else {
    ref = new INodeReference.WithName(null, withCount, r.getName()
        .toByteArray(), r.getLastSnapshotId());
  }
  return ref;
}
项目:FlexMap    文件:FSImageFormatPBSnapshot.java   
private INodeReference loadINodeReference(
    INodeReferenceSection.INodeReference r) throws IOException {
  long referredId = r.getReferredId();
  INode referred = fsDir.getInode(referredId);
  WithCount withCount = (WithCount) referred.getParentReference();
  if (withCount == null) {
    withCount = new INodeReference.WithCount(null, referred);
  }
  final INodeReference ref;
  if (r.hasDstSnapshotId()) { // DstReference
    ref = new INodeReference.DstReference(null, withCount,
        r.getDstSnapshotId());
  } else {
    ref = new INodeReference.WithName(null, withCount, r.getName()
        .toByteArray(), r.getLastSnapshotId());
  }
  return ref;
}
项目:hadoop-on-lustre2    文件:FSImageFormatPBSnapshot.java   
private INodeReference loadINodeReference(
    INodeReferenceSection.INodeReference r) throws IOException {
  long referredId = r.getReferredId();
  INode referred = fsDir.getInode(referredId);
  WithCount withCount = (WithCount) referred.getParentReference();
  if (withCount == null) {
    withCount = new INodeReference.WithCount(null, referred);
  }
  final INodeReference ref;
  if (r.hasDstSnapshotId()) { // DstReference
    ref = new INodeReference.DstReference(null, withCount,
        r.getDstSnapshotId());
  } else {
    ref = new INodeReference.WithName(null, withCount, r.getName()
        .toByteArray(), r.getLastSnapshotId());
  }
  return ref;
}
项目:hadoop    文件:DirectorySnapshottableFeature.java   
/**
 * We just found a deleted WithName node as the source of a rename operation.
 * However, we should include it in our snapshot diff report as rename only
 * if the rename target is also under the same snapshottable directory.
 */
private byte[][] findRenameTargetPath(final INodeDirectory snapshotRoot,
    INodeReference.WithName wn, final int snapshotId) {
  INode inode = wn.getReferredINode();
  final LinkedList<byte[]> ancestors = Lists.newLinkedList();
  while (inode != null) {
    if (inode == snapshotRoot) {
      return ancestors.toArray(new byte[ancestors.size()][]);
    }
    if (inode instanceof INodeReference.WithCount) {
      inode = ((WithCount) inode).getParentRef(snapshotId);
    } else {
      INode parent = inode.getParentReference() != null ? inode
          .getParentReference() : inode.getParent();
      if (parent != null && parent instanceof INodeDirectory) {
        int sid = parent.asDirectory().searchChild(inode);
        if (sid < snapshotId) {
          return null;
        }
      }
      if (!(parent instanceof WithCount)) {
        ancestors.addFirst(inode.getLocalNameBytes());
      }
      inode = parent;
    }
  }
  return null;
}
项目:hadoop    文件:FSImageFormatPBSnapshot.java   
private INodeReferenceSection.INodeReference.Builder buildINodeReference(
    INodeReference ref) throws IOException {
  INodeReferenceSection.INodeReference.Builder rb =
      INodeReferenceSection.INodeReference.newBuilder().
        setReferredId(ref.getId());
  if (ref instanceof WithName) {
    rb.setLastSnapshotId(((WithName) ref).getLastSnapshotId()).setName(
        ByteString.copyFrom(ref.getLocalNameBytes()));
  } else if (ref instanceof DstReference) {
    rb.setDstSnapshotId(ref.getDstSnapshotId());
  }
  return rb;
}
项目:aliyun-oss-hadoop-fs    文件:DirectorySnapshottableFeature.java   
/**
 * We just found a deleted WithName node as the source of a rename operation.
 * However, we should include it in our snapshot diff report as rename only
 * if the rename target is also under the same snapshottable directory.
 */
private byte[][] findRenameTargetPath(final INodeDirectory snapshotRoot,
    INodeReference.WithName wn, final int snapshotId) {
  INode inode = wn.getReferredINode();
  final LinkedList<byte[]> ancestors = Lists.newLinkedList();
  while (inode != null) {
    if (inode == snapshotRoot) {
      return ancestors.toArray(new byte[ancestors.size()][]);
    }
    if (inode instanceof INodeReference.WithCount) {
      inode = ((WithCount) inode).getParentRef(snapshotId);
    } else {
      INode parent = inode.getParentReference() != null ? inode
          .getParentReference() : inode.getParent();
      if (parent != null && parent instanceof INodeDirectory) {
        int sid = parent.asDirectory().searchChild(inode);
        if (sid < snapshotId) {
          return null;
        }
      }
      if (!(parent instanceof WithCount)) {
        ancestors.addFirst(inode.getLocalNameBytes());
      }
      inode = parent;
    }
  }
  return null;
}
项目:aliyun-oss-hadoop-fs    文件:FSImageFormatPBSnapshot.java   
private INodeReferenceSection.INodeReference.Builder buildINodeReference(
    INodeReference ref) throws IOException {
  INodeReferenceSection.INodeReference.Builder rb =
      INodeReferenceSection.INodeReference.newBuilder().
        setReferredId(ref.getId());
  if (ref instanceof WithName) {
    rb.setLastSnapshotId(((WithName) ref).getLastSnapshotId()).setName(
        ByteString.copyFrom(ref.getLocalNameBytes()));
  } else if (ref instanceof DstReference) {
    rb.setDstSnapshotId(ref.getDstSnapshotId());
  }
  return rb;
}
项目:big-c    文件:DirectorySnapshottableFeature.java   
/**
 * We just found a deleted WithName node as the source of a rename operation.
 * However, we should include it in our snapshot diff report as rename only
 * if the rename target is also under the same snapshottable directory.
 */
private byte[][] findRenameTargetPath(final INodeDirectory snapshotRoot,
    INodeReference.WithName wn, final int snapshotId) {
  INode inode = wn.getReferredINode();
  final LinkedList<byte[]> ancestors = Lists.newLinkedList();
  while (inode != null) {
    if (inode == snapshotRoot) {
      return ancestors.toArray(new byte[ancestors.size()][]);
    }
    if (inode instanceof INodeReference.WithCount) {
      inode = ((WithCount) inode).getParentRef(snapshotId);
    } else {
      INode parent = inode.getParentReference() != null ? inode
          .getParentReference() : inode.getParent();
      if (parent != null && parent instanceof INodeDirectory) {
        int sid = parent.asDirectory().searchChild(inode);
        if (sid < snapshotId) {
          return null;
        }
      }
      if (!(parent instanceof WithCount)) {
        ancestors.addFirst(inode.getLocalNameBytes());
      }
      inode = parent;
    }
  }
  return null;
}
项目:big-c    文件:FSImageFormatPBSnapshot.java   
private INodeReferenceSection.INodeReference.Builder buildINodeReference(
    INodeReference ref) throws IOException {
  INodeReferenceSection.INodeReference.Builder rb =
      INodeReferenceSection.INodeReference.newBuilder().
        setReferredId(ref.getId());
  if (ref instanceof WithName) {
    rb.setLastSnapshotId(((WithName) ref).getLastSnapshotId()).setName(
        ByteString.copyFrom(ref.getLocalNameBytes()));
  } else if (ref instanceof DstReference) {
    rb.setDstSnapshotId(ref.getDstSnapshotId());
  }
  return rb;
}
项目:hadoop-2.6.0-cdh5.4.3    文件:DirectorySnapshottableFeature.java   
/**
 * We just found a deleted WithName node as the source of a rename operation.
 * However, we should include it in our snapshot diff report as rename only
 * if the rename target is also under the same snapshottable directory.
 */
private byte[][] findRenameTargetPath(final INodeDirectory snapshotRoot,
    INodeReference.WithName wn, final int snapshotId) {
  INode inode = wn.getReferredINode();
  final LinkedList<byte[]> ancestors = Lists.newLinkedList();
  while (inode != null) {
    if (inode == snapshotRoot) {
      return ancestors.toArray(new byte[ancestors.size()][]);
    }
    if (inode instanceof INodeReference.WithCount) {
      inode = ((WithCount) inode).getParentRef(snapshotId);
    } else {
      INode parent = inode.getParentReference() != null ? inode
          .getParentReference() : inode.getParent();
      if (parent != null && parent instanceof INodeDirectory) {
        int sid = parent.asDirectory().searchChild(inode);
        if (sid < snapshotId) {
          return null;
        }
      }
      if (!(parent instanceof WithCount)) {
        ancestors.addFirst(inode.getLocalNameBytes());
      }
      inode = parent;
    }
  }
  return null;
}
项目:hadoop-2.6.0-cdh5.4.3    文件:FSImageFormatPBSnapshot.java   
private INodeReferenceSection.INodeReference.Builder buildINodeReference(
    INodeReference ref) throws IOException {
  INodeReferenceSection.INodeReference.Builder rb =
      INodeReferenceSection.INodeReference.newBuilder().
        setReferredId(ref.getId());
  if (ref instanceof WithName) {
    rb.setLastSnapshotId(((WithName) ref).getLastSnapshotId()).setName(
        ByteString.copyFrom(ref.getLocalNameBytes()));
  } else if (ref instanceof DstReference) {
    rb.setDstSnapshotId(ref.getDstSnapshotId());
  }
  return rb;
}
项目:FlexMap    文件:DirectorySnapshottableFeature.java   
/**
 * We just found a deleted WithName node as the source of a rename operation.
 * However, we should include it in our snapshot diff report as rename only
 * if the rename target is also under the same snapshottable directory.
 */
private byte[][] findRenameTargetPath(final INodeDirectory snapshotRoot,
    INodeReference.WithName wn, final int snapshotId) {
  INode inode = wn.getReferredINode();
  final LinkedList<byte[]> ancestors = Lists.newLinkedList();
  while (inode != null) {
    if (inode == snapshotRoot) {
      return ancestors.toArray(new byte[ancestors.size()][]);
    }
    if (inode instanceof INodeReference.WithCount) {
      inode = ((WithCount) inode).getParentRef(snapshotId);
    } else {
      INode parent = inode.getParentReference() != null ? inode
          .getParentReference() : inode.getParent();
      if (parent != null && parent instanceof INodeDirectory) {
        int sid = parent.asDirectory().searchChild(inode);
        if (sid < snapshotId) {
          return null;
        }
      }
      if (!(parent instanceof WithCount)) {
        ancestors.addFirst(inode.getLocalNameBytes());
      }
      inode = parent;
    }
  }
  return null;
}
项目:FlexMap    文件:FSImageFormatPBSnapshot.java   
private INodeReferenceSection.INodeReference.Builder buildINodeReference(
    INodeReference ref) throws IOException {
  INodeReferenceSection.INodeReference.Builder rb =
      INodeReferenceSection.INodeReference.newBuilder().
        setReferredId(ref.getId());
  if (ref instanceof WithName) {
    rb.setLastSnapshotId(((WithName) ref).getLastSnapshotId()).setName(
        ByteString.copyFrom(ref.getLocalNameBytes()));
  } else if (ref instanceof DstReference) {
    rb.setDstSnapshotId(ref.getDstSnapshotId());
  }
  return rb;
}
项目:hadoop-on-lustre2    文件:FSImageFormatPBSnapshot.java   
private INodeReferenceSection.INodeReference.Builder buildINodeReference(
    INodeReference ref) throws IOException {
  INodeReferenceSection.INodeReference.Builder rb =
      INodeReferenceSection.INodeReference.newBuilder().
        setReferredId(ref.getId());
  if (ref instanceof WithName) {
    rb.setLastSnapshotId(((WithName) ref).getLastSnapshotId()).setName(
        ByteString.copyFrom(ref.getLocalNameBytes()));
  } else if (ref instanceof DstReference) {
    rb.setDstSnapshotId(((DstReference) ref).getDstSnapshotId());
  }
  return rb;
}