Example usage for org.apache.hadoop.hdfs.protocol Block Block

List of usage examples for org.apache.hadoop.hdfs.protocol Block Block

Introduction

In this page you can find the example usage for org.apache.hadoop.hdfs.protocol Block Block.

Prototype

public Block(Block blk) 

Source Link

Usage

From source file:com.sun.grid.herd.HerdJsvTest.java

License:Open Source License

/**
 * Test of buildBlockRequests() method, of class HerdJsv.
 *//*  w ww.j  a  v a  2  s. co  m*/
public void testBuildBlockRequests() throws Exception {
    System.out.println("buildBlockRequests()");
    HerdJsv instance = new HerdJsv();
    List<LocatedBlock> blocks = new ArrayList<LocatedBlock>(5);
    Map<String, String> expectedResult = new HashMap<String, String>();
    Map result = null;
    long id1 = 0x1234567890abcdefL;
    long id2 = 0x0123456789abcdefL;
    long id3 = 0xfedcba0987654321L;
    long id4 = 0xfedcba9876543210L;
    long id5 = 0x0L;

    blocks.add(new LocatedBlock(new Block(id1), null));
    blocks.add(new LocatedBlock(new Block(id2), null));
    blocks.add(new LocatedBlock(new Block(id3), null));
    blocks.add(new LocatedBlock(new Block(id4), null));
    blocks.add(new LocatedBlock(new Block(id5), null));
    expectedResult.put("hdfs_B12", "*34567890abcdef*");
    expectedResult.put("hdfs_B01", "*23456789abcdef*");
    expectedResult.put("hdfs_Bfe", "*dcba0987654321*dcba9876543210*");
    expectedResult.put("hdfs_B00", "*00000000000000*");

    result = (Map) callPrivateMethod(instance, "buildBlockRequests", new Class[] { Collection.class },
            new Object[] { blocks });
    assertEquals("The buildBlockRequests() method did not build the expected requests: ", expectedResult,
            result);

    blocks.clear();
    blocks.add(new LocatedBlock(new Block(id3), null));
    blocks.add(new LocatedBlock(new Block(id4), null));
    expectedResult.clear();
    expectedResult.put("hdfs_Bfe", "*dcba0987654321*dcba9876543210*");

    result = (Map) callPrivateMethod(instance, "buildBlockRequests", new Class[] { Collection.class },
            new Object[] { blocks });
    assertEquals("The buildBlockRequests() method did not build the expected requests: ", expectedResult,
            result);

    blocks.clear();
    blocks.add(new LocatedBlock(new Block(id3), null));
    expectedResult.clear();
    expectedResult.put("hdfs_Bfe", "*dcba0987654321*");

    result = (Map) callPrivateMethod(instance, "buildBlockRequests", new Class[] { Collection.class },
            new Object[] { blocks });
    assertEquals("The buildBlockRequests() method did not build the expected requests: ", expectedResult,
            result);

    blocks.clear();
    blocks.add(new LocatedBlock(null, null));
    expectedResult.clear();

    result = (Map) callPrivateMethod(instance, "buildBlockRequests", new Class[] { Collection.class },
            new Object[] { blocks });
    assertEquals("The buildBlockRequests() method did not build the expected requests: ", expectedResult,
            result);

    blocks.clear();
    expectedResult.clear();

    result = (Map) callPrivateMethod(instance, "buildBlockRequests", new Class[] { Collection.class },
            new Object[] { blocks });
    assertEquals("The buildBlockRequests() method did not build the expected requests: ", expectedResult,
            result);

    blocks = null;
    expectedResult.clear();

    result = (Map) callPrivateMethod(instance, "buildBlockRequests", new Class[] { Collection.class },
            new Object[] { blocks });
    assertEquals("The buildBlockRequests() method did not build the expected requests: ", expectedResult,
            result);
}

From source file:common.DataNode.java

License:Apache License

/**
 * Update replica with the new generation stamp and length.  
 *///from w w  w  . j av  a 2 s  . c  om
@Override // InterDatanodeProtocol
public Block updateReplicaUnderRecovery(Block oldBlock, long recoveryId, long newLength) throws IOException {
    ReplicaInfo r = data.updateReplicaUnderRecovery(oldBlock, recoveryId, newLength);
    return new Block(r);
}

From source file:io.hops.metadata.blockmanagement.ExcessReplicasMap.java

License:Apache License

public LightWeightLinkedSet<Block> get(String dn) throws IOException {
    Collection<ExcessReplica> excessReplicas = getExcessReplicas(datanodeManager.getDatanode(dn).getSId());
    if (excessReplicas == null) {
        return null;
    }//ww  w. j  av a2s  . com
    LightWeightLinkedSet<Block> excessBlocks = new LightWeightLinkedSet<Block>();
    for (ExcessReplica er : excessReplicas) {
        //FIXME: [M] might need to get the blockinfo from the db, but for now we don't need it
        excessBlocks.add(new Block(er.getBlockId()));
    }
    return excessBlocks;
}