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

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

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

DataNode.initReplicaRecovery介绍

暂无

代码示例

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

/**
 * BlockRecoveryFI_06. all datanodes throws an exception.
 *
 * @throws IOException
 *           in case of an error
 */
@Test
public void testErrorReplicas() throws IOException, InterruptedException {
 if(LOG.isDebugEnabled()) {
  LOG.debug("Running " + GenericTestUtils.getMethodName());
 }
 DataNode spyDN = spy(dn);
 doThrow(new IOException()).
   when(spyDN).initReplicaRecovery(any(RecoveringBlock.class));
 Daemon d = spyDN.recoverBlocks(initRecoveringBlocks());
 d.join();
 verify(spyDN, never()).syncBlock(
   any(RecoveringBlock.class), anyListOf(BlockRecord.class));
}

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

/**
 * BlockRecoveryFI_05. One DN throws RecoveryInProgressException.
 *
 * @throws IOException
 *           in case of an error
 */
@Test
public void testRecoveryInProgressException()
 throws IOException, InterruptedException {
 if(LOG.isDebugEnabled()) {
  LOG.debug("Running " + GenericTestUtils.getMethodName());
 }
 DataNode spyDN = spy(dn);
 doThrow(new RecoveryInProgressException("Replica recovery is in progress")).
   when(spyDN).initReplicaRecovery(any(RecoveringBlock.class));
 Daemon d = spyDN.recoverBlocks(initRecoveringBlocks());
 d.join();
 verify(spyDN, never()).syncBlock(
   any(RecoveringBlock.class), anyListOf(BlockRecord.class));
}

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

/**
 * BlockRecoveryFI_07. max replica length from all DNs is zero.
 *
 * @throws IOException in case of an error
 */
@Test
public void testZeroLenReplicas() throws IOException, InterruptedException {
 if(LOG.isDebugEnabled()) {
  LOG.debug("Running " + GenericTestUtils.getMethodName());
 }
 DataNode spyDN = spy(dn);
 doReturn(new ReplicaRecoveryInfo(block.getBlockId(), 0,
   block.getGenerationStamp(), ReplicaState.FINALIZED)).when(spyDN).
   initReplicaRecovery(any(RecoveringBlock.class));
 Daemon d = spyDN.recoverBlocks(initRecoveringBlocks());
 d.join();
 verify(dn.namenode).commitBlockSynchronization(
   block, RECOVERY_ID, 0, true, true, DatanodeID.EMPTY_ARRAY);
}

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

/**
 * BlockRecoveryFI_06. all datanodes throws an exception.
 *
 * @throws IOException
 *           in case of an error
 */
@Test
public void testErrorReplicas() throws IOException, InterruptedException {
 if(LOG.isDebugEnabled()) {
  LOG.debug("Running " + GenericTestUtils.getMethodName());
 }
 DataNode spyDN = spy(dn);
 doThrow(new IOException()).
   when(spyDN).initReplicaRecovery(any(RecoveringBlock.class));
 Daemon d = spyDN.recoverBlocks("fake NN", initRecoveringBlocks());
 d.join();
 verify(spyDN, never()).syncBlock(
   any(RecoveringBlock.class), anyListOf(BlockRecord.class));
}

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

/**
 * BlockRecoveryFI_05. One DN throws RecoveryInProgressException.
 *
 * @throws IOException
 *           in case of an error
 */
@Test
public void testRecoveryInProgressException()
 throws IOException, InterruptedException {
 if(LOG.isDebugEnabled()) {
  LOG.debug("Running " + GenericTestUtils.getMethodName());
 }
 DataNode spyDN = spy(dn);
 doThrow(new RecoveryInProgressException("Replica recovery is in progress")).
   when(spyDN).initReplicaRecovery(any(RecoveringBlock.class));
 Daemon d = spyDN.recoverBlocks("fake NN", initRecoveringBlocks());
 d.join();
 verify(spyDN, never()).syncBlock(
   any(RecoveringBlock.class), anyListOf(BlockRecord.class));
}

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

@Override
 public void run() {
  try {
   DatanodeInfo[] locations = block.getLocations();
   final RecoveringBlock recoveringBlock = new RecoveringBlock(
     block.getBlock(), locations, block.getBlock()
       .getGenerationStamp() + 1);
   synchronized (dataNode.data) {
    Thread.sleep(2000);
    dataNode.initReplicaRecovery(recoveringBlock);
   }
  } catch (Exception e) {
   recoveryInitResult.set(false);
  }
 }
};

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

/**
 * BlockRecoveryFI_07. max replica length from all DNs is zero.
 *
 * @throws IOException in case of an error
 */
@Test
public void testZeroLenReplicas() throws IOException, InterruptedException {
 if(LOG.isDebugEnabled()) {
  LOG.debug("Running " + GenericTestUtils.getMethodName());
 }
 DataNode spyDN = spy(dn);
 doReturn(new ReplicaRecoveryInfo(block.getBlockId(), 0,
   block.getGenerationStamp(), ReplicaState.FINALIZED)).when(spyDN).
   initReplicaRecovery(any(RecoveringBlock.class));
 Daemon d = spyDN.recoverBlocks("fake NN", initRecoveringBlocks());
 d.join();
 DatanodeProtocol dnP = dn.getActiveNamenodeForBP(POOL_ID);
 verify(dnP).commitBlockSynchronization(
   block, RECOVERY_ID, 0, true, true, DatanodeID.EMPTY_ARRAY, null);
}

相关文章

DataNode类方法