private void DeleteReplica(ReplicaInfo replicaToDelete) { // Delete the files on disk. Failure here is okay. FilePath blockFile = replicaToDelete.GetBlockFile(); if (!blockFile.Delete()) { Log.Warn("Failed to delete block file " + blockFile); } FilePath metaFile = replicaToDelete.GetMetaFile(); if (!metaFile.Delete()) { Log.Warn("Failed to delete meta file " + metaFile); } }
/// <exception cref="System.IO.IOException"/> private static void CreateUnlinkTmpFile(ReplicaInfo replicaInfo, bool changeBlockFile , bool isRename) { FilePath src; if (changeBlockFile) { src = replicaInfo.GetBlockFile(); } else { src = replicaInfo.GetMetaFile(); } FilePath dst = DatanodeUtil.GetUnlinkTmpFile(src); if (isRename) { src.RenameTo(dst); } else { FileInputStream @in = new FileInputStream(src); try { FileOutputStream @out = new FileOutputStream(dst); try { IOUtils.CopyBytes(@in, @out, 1); } finally { @out.Close(); } } finally { @in.Close(); } } }