/** * Creates a new instance of {@link BlockMasterInfo} from a proto representation. * * @param info the proto representation of a block master information * @return the instance */ public static BlockMasterInfo fromProto(alluxio.grpc.BlockMasterInfo info) { return new BlockMasterInfo() .setCapacityBytes(info.getCapacityBytes()) .setCapacityBytesOnTiers(info.getCapacityBytesOnTiersMap()) .setFreeBytes(info.getFreeBytes()) .setLiveWorkerNum(info.getLiveWorkerNum()) .setLostWorkerNum(info.getLostWorkerNum()) .setUsedBytes(info.getUsedBytes()) .setUsedBytesOnTiers(info.getUsedBytesOnTiersMap()); }
@Override public BlockMasterInfo getBlockMasterInfo(final Set<BlockMasterInfoField> fields) throws IOException { return retryRPC(() -> { return BlockMasterInfo .fromProto(mClient.getBlockMasterInfo(GetBlockMasterInfoPOptions.newBuilder() .addAllFilters( fields.stream().map(BlockMasterInfoField::toProto).collect(Collectors.toList())) .build()).getBlockMasterInfo()); }); }
public void checkEquality(BlockMasterInfo a, BlockMasterInfo b) { Assert.assertEquals(a.getCapacityBytes(), b.getCapacityBytes()); Assert.assertEquals(a.getCapacityBytesOnTiers(), b.getCapacityBytesOnTiers()); Assert.assertEquals(a.getFreeBytes(), b.getFreeBytes()); Assert.assertEquals(a.getLiveWorkerNum(), b.getLiveWorkerNum()); Assert.assertEquals(a.getLostWorkerNum(), b.getLostWorkerNum()); Assert.assertEquals(a.getUsedBytes(), b.getUsedBytes()); Assert.assertEquals(a.getUsedBytesOnTiers(), b.getUsedBytesOnTiers()); Assert.assertEquals(a, b); }
public static BlockMasterInfo createRandom() { BlockMasterInfo result = new BlockMasterInfo(); Random random = new Random(); long capacityBytes = random.nextLong(); Map<String, Long> capacityBytesOnTiers = new HashMap<>(); capacityBytesOnTiers.put("MEM", capacityBytes); long freeBytes = random.nextLong(); int liveWorkerNum = random.nextInt(10); int lostWorkerNum = random.nextInt(10); long usedBytes = random.nextLong(); Map<String, Long> usedBytesOnTiers = new HashMap<>(); usedBytesOnTiers.put("MEM", capacityBytes); result.setCapacityBytes(capacityBytes); result.setCapacityBytesOnTiers(capacityBytesOnTiers); result.setFreeBytes(freeBytes); result.setLiveWorkerNum(liveWorkerNum); result.setLostWorkerNum(lostWorkerNum); result.setUsedBytes(usedBytes); result.setUsedBytesOnTiers(usedBytesOnTiers); return result; } }
BlockMasterInfo blockMasterInfo = mBlockMasterClient.getBlockMasterInfo(blockMasterInfoFilter); print("Live Workers: " + blockMasterInfo.getLiveWorkerNum()); print("Lost Workers: " + blockMasterInfo.getLostWorkerNum()); + FormatUtils.getSizeFromBytes(blockMasterInfo.getCapacityBytes())); totalCapacityOnTiers.putAll(blockMasterInfo.getCapacityBytesOnTiers()); for (Map.Entry<String, Long> capacityBytesTier : totalCapacityOnTiers.entrySet()) { print("Tier: " + capacityBytesTier.getKey() + FormatUtils.getSizeFromBytes(blockMasterInfo.getUsedBytes())); usedCapacityOnTiers.putAll(blockMasterInfo.getUsedBytesOnTiers()); for (Map.Entry<String, Long> usedBytesTier: usedCapacityOnTiers.entrySet()) { print("Tier: " + usedBytesTier.getKey() + FormatUtils.getSizeFromBytes(blockMasterInfo.getFreeBytes()));
/** * Creates a new instance of {@link BlockMasterInfo} from a thrift representation. * * @param info the thrift representation of a block master information * @return the instance */ public static BlockMasterInfo fromThrift(alluxio.thrift.BlockMasterInfo info) { return new BlockMasterInfo() .setCapacityBytes(info.getCapacityBytes()) .setCapacityBytesOnTiers(info.getCapacityBytesOnTiers()) .setFreeBytes(info.getFreeBytes()) .setLiveWorkerNum(info.getLiveWorkerNum()) .setLostWorkerNum(info.getLostWorkerNum()) .setUsedBytes(info.getUsedBytes()) .setUsedBytesOnTiers(info.getUsedBytesOnTiers()); }