HDFS-2538. option to disable fsck dots. Contributed by Mohammad Kamrul Islam.
git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1611220 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
e8a1ff7efe
commit
c477a166e1
@ -127,7 +127,7 @@ User Commands
|
|||||||
Runs a HDFS filesystem checking utility.
|
Runs a HDFS filesystem checking utility.
|
||||||
See {{{../hadoop-hdfs/HdfsUserGuide.html#fsck}fsck}} for more info.
|
See {{{../hadoop-hdfs/HdfsUserGuide.html#fsck}fsck}} for more info.
|
||||||
|
|
||||||
Usage: <<<hadoop fsck [GENERIC_OPTIONS] <path> [-move | -delete | -openforwrite] [-files [-blocks [-locations | -racks]]]>>>
|
Usage: <<<hadoop fsck [GENERIC_OPTIONS] <path> [-move | -delete | -openforwrite] [-files [-blocks [-locations | -racks]]] [-showprogress]>>>
|
||||||
|
|
||||||
*------------------+---------------------------------------------+
|
*------------------+---------------------------------------------+
|
||||||
|| COMMAND_OPTION || Description
|
|| COMMAND_OPTION || Description
|
||||||
@ -148,6 +148,8 @@ User Commands
|
|||||||
*------------------+---------------------------------------------+
|
*------------------+---------------------------------------------+
|
||||||
| -racks | Print out network topology for data-node locations.
|
| -racks | Print out network topology for data-node locations.
|
||||||
*------------------+---------------------------------------------+
|
*------------------+---------------------------------------------+
|
||||||
|
| -showprogress | Print out show progress in output. Default is OFF (no progress).
|
||||||
|
*------------------+---------------------------------------------+
|
||||||
|
|
||||||
* <<<fetchdt>>>
|
* <<<fetchdt>>>
|
||||||
|
|
||||||
|
@ -12,6 +12,8 @@ Trunk (Unreleased)
|
|||||||
HDFS-5570. Deprecate hftp / hsftp and replace them with webhdfs / swebhdfs.
|
HDFS-5570. Deprecate hftp / hsftp and replace them with webhdfs / swebhdfs.
|
||||||
(wheat9)
|
(wheat9)
|
||||||
|
|
||||||
|
HDFS-2538. option to disable fsck dots (Mohammad Kamrul Islam via aw)
|
||||||
|
|
||||||
NEW FEATURES
|
NEW FEATURES
|
||||||
|
|
||||||
HDFS-3125. Add JournalService to enable Journal Daemon. (suresh)
|
HDFS-3125. Add JournalService to enable Journal Daemon. (suresh)
|
||||||
|
@ -126,6 +126,7 @@ public class NamenodeFsck implements DataEncryptionKeyFactory {
|
|||||||
private boolean showBlocks = false;
|
private boolean showBlocks = false;
|
||||||
private boolean showLocations = false;
|
private boolean showLocations = false;
|
||||||
private boolean showRacks = false;
|
private boolean showRacks = false;
|
||||||
|
private boolean showprogress = false;
|
||||||
private boolean showCorruptFileBlocks = false;
|
private boolean showCorruptFileBlocks = false;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -203,6 +204,7 @@ public class NamenodeFsck implements DataEncryptionKeyFactory {
|
|||||||
else if (key.equals("blocks")) { this.showBlocks = true; }
|
else if (key.equals("blocks")) { this.showBlocks = true; }
|
||||||
else if (key.equals("locations")) { this.showLocations = true; }
|
else if (key.equals("locations")) { this.showLocations = true; }
|
||||||
else if (key.equals("racks")) { this.showRacks = true; }
|
else if (key.equals("racks")) { this.showRacks = true; }
|
||||||
|
else if (key.equals("showprogress")) { this.showprogress = true; }
|
||||||
else if (key.equals("openforwrite")) {this.showOpenFiles = true; }
|
else if (key.equals("openforwrite")) {this.showOpenFiles = true; }
|
||||||
else if (key.equals("listcorruptfileblocks")) {
|
else if (key.equals("listcorruptfileblocks")) {
|
||||||
this.showCorruptFileBlocks = true;
|
this.showCorruptFileBlocks = true;
|
||||||
@ -381,10 +383,13 @@ void check(String parent, HdfsFileStatus file, Result res) throws IOException {
|
|||||||
} else if (showFiles) {
|
} else if (showFiles) {
|
||||||
out.print(path + " " + fileLen + " bytes, " +
|
out.print(path + " " + fileLen + " bytes, " +
|
||||||
blocks.locatedBlockCount() + " block(s): ");
|
blocks.locatedBlockCount() + " block(s): ");
|
||||||
} else {
|
} else if (showprogress) {
|
||||||
out.print('.');
|
out.print('.');
|
||||||
}
|
}
|
||||||
if (res.totalFiles % 100 == 0) { out.println(); out.flush(); }
|
if ((showprogress) && res.totalFiles % 100 == 0) {
|
||||||
|
out.println();
|
||||||
|
out.flush();
|
||||||
|
}
|
||||||
int missing = 0;
|
int missing = 0;
|
||||||
int corrupt = 0;
|
int corrupt = 0;
|
||||||
long missize = 0;
|
long missize = 0;
|
||||||
|
@ -77,7 +77,7 @@ public class DFSck extends Configured implements Tool {
|
|||||||
private static final String USAGE = "Usage: DFSck <path> "
|
private static final String USAGE = "Usage: DFSck <path> "
|
||||||
+ "[-list-corruptfileblocks | "
|
+ "[-list-corruptfileblocks | "
|
||||||
+ "[-move | -delete | -openforwrite] "
|
+ "[-move | -delete | -openforwrite] "
|
||||||
+ "[-files [-blocks [-locations | -racks]]]]\n"
|
+ "[-files [-blocks [-locations | -racks]]]] [-showprogress]\n"
|
||||||
+ "\t<path>\tstart checking from this path\n"
|
+ "\t<path>\tstart checking from this path\n"
|
||||||
+ "\t-move\tmove corrupted files to /lost+found\n"
|
+ "\t-move\tmove corrupted files to /lost+found\n"
|
||||||
+ "\t-delete\tdelete corrupted files\n"
|
+ "\t-delete\tdelete corrupted files\n"
|
||||||
@ -90,7 +90,8 @@ public class DFSck extends Configured implements Tool {
|
|||||||
+ "blocks and files they belong to\n"
|
+ "blocks and files they belong to\n"
|
||||||
+ "\t-blocks\tprint out block report\n"
|
+ "\t-blocks\tprint out block report\n"
|
||||||
+ "\t-locations\tprint out locations for every block\n"
|
+ "\t-locations\tprint out locations for every block\n"
|
||||||
+ "\t-racks\tprint out network topology for data-node locations\n\n"
|
+ "\t-racks\tprint out network topology for data-node locations\n"
|
||||||
|
+ "\t-showprogress\tshow progress in output. Default is OFF (no progress)\n\n"
|
||||||
+ "Please Note:\n"
|
+ "Please Note:\n"
|
||||||
+ "\t1. By default fsck ignores files opened for write, "
|
+ "\t1. By default fsck ignores files opened for write, "
|
||||||
+ "use -openforwrite to report such files. They are usually "
|
+ "use -openforwrite to report such files. They are usually "
|
||||||
@ -270,6 +271,7 @@ private int doWork(final String[] args) throws IOException {
|
|||||||
else if (args[idx].equals("-blocks")) { url.append("&blocks=1"); }
|
else if (args[idx].equals("-blocks")) { url.append("&blocks=1"); }
|
||||||
else if (args[idx].equals("-locations")) { url.append("&locations=1"); }
|
else if (args[idx].equals("-locations")) { url.append("&locations=1"); }
|
||||||
else if (args[idx].equals("-racks")) { url.append("&racks=1"); }
|
else if (args[idx].equals("-racks")) { url.append("&racks=1"); }
|
||||||
|
else if (args[idx].equals("-showprogress")) { url.append("&showprogress=1"); }
|
||||||
else if (args[idx].equals("-list-corruptfileblocks")) {
|
else if (args[idx].equals("-list-corruptfileblocks")) {
|
||||||
url.append("&listcorruptfileblocks=1");
|
url.append("&listcorruptfileblocks=1");
|
||||||
doListCorruptFileBlocks = true;
|
doListCorruptFileBlocks = true;
|
||||||
|
Loading…
Reference in New Issue
Block a user