/** * Returns volume UUID to volume base path map. * * @return Map * @throws DiskBalancerException */ private Map<String, String> getStorageIDToVolumeBasePathMap() throws DiskBalancerException { Map<String, String> storageIDToVolBasePathMap = new HashMap<>(); FsDatasetSpi.FsVolumeReferences references; try { try(AutoCloseableLock lock = this.dataset.acquireDatasetLock()) { references = this.dataset.getFsVolumeReferences(); for (int ndx = 0; ndx < references.size(); ndx++) { FsVolumeSpi vol = references.get(ndx); storageIDToVolBasePathMap.put(vol.getStorageID(), vol.getBaseURI().getPath()); } references.close(); } } catch (IOException ex) { LOG.error("Disk Balancer - Internal Error.", ex); throw new DiskBalancerException("Internal error", ex, DiskBalancerException.Result.INTERNAL_ERROR); } return storageIDToVolBasePathMap; }
try(AutoCloseableLock lock = data.acquireDatasetLock()) { Block storedBlock = data.getStoredBlock(b.getBlockPoolId(), b.getBlockId());
try(AutoCloseableLock lock = datanode.data.acquireDatasetLock()) { replica = getReplica(block, datanode); replicaVisibleLength = replica.getVisibleLength();
try(AutoCloseableLock lock = dataset.acquireDatasetLock()) { for (Entry<String, ScanInfo[]> entry : diskReport.entrySet()) { String bpid = entry.getKey();