org.apache.hadoop.hdfs.server.datanode.DataNode.parseChangedVolumes()方法的使用及代码示例

x33g5p2x  于2022-01-18 转载在 其他  
字(2.8k)|赞(0)|评价(0)|浏览(120)

本文整理了Java中org.apache.hadoop.hdfs.server.datanode.DataNode.parseChangedVolumes()方法的一些代码示例,展示了DataNode.parseChangedVolumes()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。DataNode.parseChangedVolumes()方法的具体详情如下:
包路径:org.apache.hadoop.hdfs.server.datanode.DataNode
类名称:DataNode
方法名:parseChangedVolumes

DataNode.parseChangedVolumes介绍

[英]Parse the new DFS_DATANODE_DATA_DIR value in the configuration to detect changed volumes.
[中]解析配置中的新DFS\u DATANODE\u DATA\u DIR值以检测更改的卷。

代码示例

代码示例来源:origin: org.apache.hadoop/hadoop-hdfs

ExecutorService service = null;
int numOldDataDirs = dataDirs.size();
ChangedVolumes changedVolumes = parseChangedVolumes(newVolumes);
StringBuilder errorMessageBuilder = new StringBuilder();
List<String> effectiveVolumes = Lists.newArrayList();

代码示例来源:origin: ch.cern.hadoop/hadoop-hdfs

ChangedVolumes changedVolumes = parseChangedVolumes(newVolumes);
StringBuilder errorMessageBuilder = new StringBuilder();
List<String> effectiveVolumes = Lists.newArrayList();

代码示例来源:origin: io.prestosql.hadoop/hadoop-apache

ChangedVolumes changedVolumes = parseChangedVolumes(newVolumes);
StringBuilder errorMessageBuilder = new StringBuilder();
List<String> effectiveVolumes = Lists.newArrayList();

代码示例来源:origin: ch.cern.hadoop/hadoop-hdfs

@Test
public void testParseChangedVolumesFailures() throws IOException {
 startDFSCluster(1, 1);
 DataNode dn = cluster.getDataNodes().get(0);
 try {
  dn.parseChangedVolumes("");
  fail("Should throw IOException: empty inputs.");
 } catch (IOException e) {
  GenericTestUtils.assertExceptionContains("No directory is specified.", e);
 }
}

代码示例来源:origin: ch.cern.hadoop/hadoop-hdfs

@Test
public void testParseChangedVolumes() throws IOException {
 startDFSCluster(1, 1);
 DataNode dn = cluster.getDataNodes().get(0);
 Configuration conf = dn.getConf();
 String oldPaths = conf.get(DFS_DATANODE_DATA_DIR_KEY);
 List<StorageLocation> oldLocations = new ArrayList<StorageLocation>();
 for (String path : oldPaths.split(",")) {
  oldLocations.add(StorageLocation.parse(path));
 }
 assertFalse(oldLocations.isEmpty());
 String newPaths = oldLocations.get(0).getFile().getAbsolutePath() +
   ",/foo/path1,/foo/path2";
 DataNode.ChangedVolumes changedVolumes =
   dn.parseChangedVolumes(newPaths);
 List<StorageLocation> newVolumes = changedVolumes.newLocations;
 assertEquals(2, newVolumes.size());
 assertEquals(new File("/foo/path1").getAbsolutePath(),
  newVolumes.get(0).getFile().getAbsolutePath());
 assertEquals(new File("/foo/path2").getAbsolutePath(),
  newVolumes.get(1).getFile().getAbsolutePath());
 List<StorageLocation> removedVolumes = changedVolumes.deactivateLocations;
 assertEquals(1, removedVolumes.size());
 assertEquals(oldLocations.get(1).getFile(),
   removedVolumes.get(0).getFile());
 assertEquals(1, changedVolumes.unchangedLocations.size());
 assertEquals(oldLocations.get(0).getFile(),
   changedVolumes.unchangedLocations.get(0).getFile());
}

相关文章

DataNode类方法