Package org.apache.hadoop.yarn.server.nodemanager.DeletionService

Examples of org.apache.hadoop.yarn.server.nodemanager.DeletionService.FileDeletionTask


  }

  private void cleanUpFilesPerUserDir(FileContext lfs, DeletionService del,
      Path userDirPath) throws IOException {
    RemoteIterator<FileStatus> userDirStatus = lfs.listStatus(userDirPath);
    FileDeletionTask dependentDeletionTask =
        del.createFileDeletionTask(null, userDirPath, new Path[] {});
    if (userDirStatus != null) {
      List<FileDeletionTask> deletionTasks = new ArrayList<FileDeletionTask>();
      while (userDirStatus.hasNext()) {
        FileStatus status = userDirStatus.next();
        String owner = status.getOwner();
        FileDeletionTask deletionTask =
            del.createFileDeletionTask(owner, null,
              new Path[] { status.getPath() });
        deletionTask.addFileDeletionTaskDependency(dependentDeletionTask);
        deletionTasks.add(deletionTask);
      }
      for (FileDeletionTask task : deletionTasks) {
        del.scheduleFileDeletionTask(task);
      }
View Full Code Here


  }

  private void cleanUpFilesPerUserDir(FileContext lfs, DeletionService del,
      Path userDirPath) throws IOException {
    RemoteIterator<FileStatus> userDirStatus = lfs.listStatus(userDirPath);
    FileDeletionTask dependentDeletionTask =
        del.createFileDeletionTask(null, userDirPath, new Path[] {});
    if (userDirStatus != null) {
      List<FileDeletionTask> deletionTasks = new ArrayList<FileDeletionTask>();
      while (userDirStatus.hasNext()) {
        FileStatus status = userDirStatus.next();
        String owner = status.getOwner();
        FileDeletionTask deletionTask =
            del.createFileDeletionTask(owner, null,
              new Path[] { status.getPath() });
        deletionTask.addFileDeletionTaskDependency(dependentDeletionTask);
        deletionTasks.add(deletionTask);
      }
      for (FileDeletionTask task : deletionTasks) {
        del.scheduleFileDeletionTask(task);
      }
View Full Code Here

  }

  private void cleanUpFilesPerUserDir(FileContext lfs, DeletionService del,
      Path userDirPath) throws IOException {
    RemoteIterator<FileStatus> userDirStatus = lfs.listStatus(userDirPath);
    FileDeletionTask dependentDeletionTask =
        del.createFileDeletionTask(null, userDirPath, new Path[] {});
    if (userDirStatus != null) {
      List<FileDeletionTask> deletionTasks = new ArrayList<FileDeletionTask>();
      while (userDirStatus.hasNext()) {
        FileStatus status = userDirStatus.next();
        String owner = status.getOwner();
        FileDeletionTask deletionTask =
            del.createFileDeletionTask(owner, null,
              new Path[] { status.getPath() });
        deletionTask.addFileDeletionTaskDependency(dependentDeletionTask);
        deletionTasks.add(deletionTask);
      }
      for (FileDeletionTask task : deletionTasks) {
        del.scheduleFileDeletionTask(task);
      }
View Full Code Here

     
      // first we will try to delete sub directories which are present. This
      // should then trigger parent directory to be deleted.
      List<Path> subDirs = buildDirs(r, dirs.get(0), 2);
     
      FileDeletionTask dependentDeletionTask =
          del.createFileDeletionTask(null, dirs.get(0), new Path[] {});
      List<FileDeletionTask> deletionTasks = new ArrayList<FileDeletionTask>();
      for (Path subDir : subDirs) {
        FileDeletionTask deletionTask =
            del.createFileDeletionTask(null, null, new Path[] { subDir });
        deletionTask.addFileDeletionTaskDependency(dependentDeletionTask);
        deletionTasks.add(deletionTask);
      }
      for (FileDeletionTask task : deletionTasks) {
        del.scheduleFileDeletionTask(task);
      }

      int msecToWait = 20 * 1000;
      while (msecToWait > 0 && (lfs.util().exists(dirs.get(0)))) {
        Thread.sleep(100);
        msecToWait -= 100;
      }
      assertFalse(lfs.util().exists(dirs.get(0)));
     

      // Now we will try to delete sub directories; one of the deletion task we
      // will mark as failure and then parent directory should not be deleted.
      subDirs = buildDirs(r, dirs.get(1), 2);
      subDirs.add(new Path(dirs.get(1), "absentFile"));
     
      dependentDeletionTask =
          del.createFileDeletionTask(null, dirs.get(1), new Path[] {});
      deletionTasks = new ArrayList<FileDeletionTask>();
      for (Path subDir : subDirs) {
        FileDeletionTask deletionTask =
            del.createFileDeletionTask(null, null, new Path[] { subDir });
        deletionTask.addFileDeletionTaskDependency(dependentDeletionTask);
        deletionTasks.add(deletionTask);
      }
      // marking one of the tasks as a failure.
      deletionTasks.get(2).setSuccess(false);
      for (FileDeletionTask task : deletionTasks) {
View Full Code Here

  }

  private void cleanUpFilesPerUserDir(FileContext lfs, DeletionService del,
      Path userDirPath) throws IOException {
    RemoteIterator<FileStatus> userDirStatus = lfs.listStatus(userDirPath);
    FileDeletionTask dependentDeletionTask =
        del.createFileDeletionTask(null, userDirPath, new Path[] {});
    if (userDirStatus != null) {
      List<FileDeletionTask> deletionTasks = new ArrayList<FileDeletionTask>();
      while (userDirStatus.hasNext()) {
        FileStatus status = userDirStatus.next();
        String owner = status.getOwner();
        FileDeletionTask deletionTask =
            del.createFileDeletionTask(owner, null,
              new Path[] { status.getPath() });
        deletionTask.addFileDeletionTaskDependency(dependentDeletionTask);
        deletionTasks.add(deletionTask);
      }
      for (FileDeletionTask task : deletionTasks) {
        del.scheduleFileDeletionTask(task);
      }
View Full Code Here

  }

  private void cleanUpFilesPerUserDir(FileContext lfs, DeletionService del,
      Path userDirPath) throws IOException {
    RemoteIterator<FileStatus> userDirStatus = lfs.listStatus(userDirPath);
    FileDeletionTask dependentDeletionTask =
        del.createFileDeletionTask(null, userDirPath, new Path[] {});
    if (userDirStatus != null) {
      List<FileDeletionTask> deletionTasks = new ArrayList<FileDeletionTask>();
      while (userDirStatus.hasNext()) {
        FileStatus status = userDirStatus.next();
        String owner = status.getOwner();
        FileDeletionTask deletionTask =
            del.createFileDeletionTask(owner, null,
              new Path[] { status.getPath() });
        deletionTask.addFileDeletionTaskDependency(dependentDeletionTask);
        deletionTasks.add(deletionTask);
      }
      for (FileDeletionTask task : deletionTasks) {
        del.scheduleFileDeletionTask(task);
      }
View Full Code Here

      this.baseDirIncludes = baseDirIncludes;
    }
   
    @Override
    public boolean matches(Object o) {
      FileDeletionTask fd = (FileDeletionTask)o;
      if (fd.getUser() == null && user != null) {
        return false;
      } else if (fd.getUser() != null && user == null) {
        return false;
      } else if (fd.getUser() != null && user != null) {
        return fd.getUser().equals(user);
      }
      if (!comparePaths(fd.getSubDir(), subDirIncludes)) {
        return false;
      }
      if (baseDirIncludes == null && fd.getBaseDirs() != null) {
        return false;
      } else if (baseDirIncludes != null && fd.getBaseDirs() == null ) {
        return false;
      } else if (baseDirIncludes != null && fd.getBaseDirs() != null) {
        if (baseDirIncludes.length != fd.getBaseDirs().size()) {
          return false;
        }
        for (int i =0 ; i < baseDirIncludes.length; i++) {
          if (!comparePaths(fd.getBaseDirs().get(i), baseDirIncludes[i])) {
            return false;
          }
        }
      }
      return true;
View Full Code Here

     
      // first we will try to delete sub directories which are present. This
      // should then trigger parent directory to be deleted.
      List<Path> subDirs = buildDirs(r, dirs.get(0), 2);
     
      FileDeletionTask dependentDeletionTask =
          del.createFileDeletionTask(null, dirs.get(0), new Path[] {});
      List<FileDeletionTask> deletionTasks = new ArrayList<FileDeletionTask>();
      for (Path subDir : subDirs) {
        FileDeletionTask deletionTask =
            del.createFileDeletionTask(null, null, new Path[] { subDir });
        deletionTask.addFileDeletionTaskDependency(dependentDeletionTask);
        deletionTasks.add(deletionTask);
      }
      for (FileDeletionTask task : deletionTasks) {
        del.scheduleFileDeletionTask(task);
      }

      int msecToWait = 20 * 1000;
      while (msecToWait > 0 && (lfs.util().exists(dirs.get(0)))) {
        Thread.sleep(100);
        msecToWait -= 100;
      }
      assertFalse(lfs.util().exists(dirs.get(0)));
     

      // Now we will try to delete sub directories; one of the deletion task we
      // will mark as failure and then parent directory should not be deleted.
      subDirs = buildDirs(r, dirs.get(1), 2);
      subDirs.add(new Path(dirs.get(1), "absentFile"));
     
      dependentDeletionTask =
          del.createFileDeletionTask(null, dirs.get(1), new Path[] {});
      deletionTasks = new ArrayList<FileDeletionTask>();
      for (Path subDir : subDirs) {
        FileDeletionTask deletionTask =
            del.createFileDeletionTask(null, null, new Path[] { subDir });
        deletionTask.addFileDeletionTaskDependency(dependentDeletionTask);
        deletionTasks.add(deletionTask);
      }
      // marking one of the tasks as a failure.
      deletionTasks.get(2).setSuccess(false);
      for (FileDeletionTask task : deletionTasks) {
View Full Code Here

      this.baseDirIncludes = baseDirIncludes;
    }
   
    @Override
    public boolean matches(Object o) {
      FileDeletionTask fd = (FileDeletionTask)o;
      if (fd.getUser() == null && user != null) {
        return false;
      } else if (fd.getUser() != null && user == null) {
        return false;
      } else if (fd.getUser() != null && user != null) {
        return fd.getUser().equals(user);
      }
      if (!comparePaths(fd.getSubDir(), subDirIncludes)) {
        return false;
      }
      if (baseDirIncludes == null && fd.getBaseDirs() != null) {
        return false;
      } else if (baseDirIncludes != null && fd.getBaseDirs() == null ) {
        return false;
      } else if (baseDirIncludes != null && fd.getBaseDirs() != null) {
        if (baseDirIncludes.length != fd.getBaseDirs().size()) {
          return false;
        }
        for (int i =0 ; i < baseDirIncludes.length; i++) {
          if (!comparePaths(fd.getBaseDirs().get(i), baseDirIncludes[i])) {
            return false;
          }
        }
      }
      return true;
View Full Code Here

  }

  private void cleanUpFilesPerUserDir(FileContext lfs, DeletionService del,
      Path userDirPath) throws IOException {
    RemoteIterator<FileStatus> userDirStatus = lfs.listStatus(userDirPath);
    FileDeletionTask dependentDeletionTask =
        del.createFileDeletionTask(null, userDirPath, new Path[] {});
    if (userDirStatus != null) {
      List<FileDeletionTask> deletionTasks = new ArrayList<FileDeletionTask>();
      while (userDirStatus.hasNext()) {
        FileStatus status = userDirStatus.next();
        String owner = status.getOwner();
        FileDeletionTask deletionTask =
            del.createFileDeletionTask(owner, null,
              new Path[] { status.getPath() });
        deletionTask.addFileDeletionTaskDependency(dependentDeletionTask);
        deletionTasks.add(deletionTask);
      }
      for (FileDeletionTask task : deletionTasks) {
        del.scheduleFileDeletionTask(task);
      }
View Full Code Here

TOP

Related Classes of org.apache.hadoop.yarn.server.nodemanager.DeletionService.FileDeletionTask

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.