You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by te...@apache.org on 2015/04/08 15:15:25 UTC
hbase git commit: HBASE-11864 Enhance HLogPrettyPrinter to print
information from WAL Header (Chuhan Yang)
Repository: hbase
Updated Branches:
refs/heads/branch-1 3cda2dfca -> 3f8780e15
HBASE-11864 Enhance HLogPrettyPrinter to print information from WAL Header (Chuhan Yang)
Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/3f8780e1
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/3f8780e1
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/3f8780e1
Branch: refs/heads/branch-1
Commit: 3f8780e15383d1624dae47faca3cfb8455299259
Parents: 3cda2df
Author: tedyu <yu...@gmail.com>
Authored: Wed Apr 8 06:15:20 2015 -0700
Committer: tedyu <yu...@gmail.com>
Committed: Wed Apr 8 06:15:20 2015 -0700
----------------------------------------------------------------------
.../regionserver/wal/ProtobufLogReader.java | 15 +++++++++++-
.../wal/SecureProtobufLogReader.java | 2 +-
.../hadoop/hbase/wal/WALPrettyPrinter.java | 25 +++++++++++++++++++-
3 files changed, 39 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hbase/blob/3f8780e1/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogReader.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogReader.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogReader.java
index 285f69b..af8b5bb 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogReader.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogReader.java
@@ -91,6 +91,9 @@ public class ProtobufLogReader extends ReaderBase {
static {
writerClsNames.add(ProtobufLogWriter.class.getSimpleName());
}
+
+ // cell codec classname
+ private String codecClsName = null;
enum WALHdrResult {
EOF, // stream is at EOF when method starts
@@ -153,9 +156,16 @@ public class ProtobufLogReader extends ReaderBase {
/*
* Returns names of the accepted writer classes
*/
- protected List<String> getWriterClsNames() {
+ public List<String> getWriterClsNames() {
return writerClsNames;
}
+
+ /*
+ * Returns the cell codec classname
+ */
+ public String getCodecClsName() {
+ return codecClsName;
+ }
protected WALHdrContext readHeader(Builder builder, FSDataInputStream stream)
throws IOException {
@@ -207,6 +217,9 @@ public class ProtobufLogReader extends ReaderBase {
LOG.trace("After reading the trailer: walEditsStopOffset: " + this.walEditsStopOffset
+ ", fileLength: " + this.fileLength + ", " + "trailerPresent: " + trailerPresent);
}
+
+ codecClsName = hdrCtxt.getCellCodecClsName();
+
return hdrCtxt.getCellCodecClsName();
}
http://git-wip-us.apache.org/repos/asf/hbase/blob/3f8780e1/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/SecureProtobufLogReader.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/SecureProtobufLogReader.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/SecureProtobufLogReader.java
index d175741..0d052d4 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/SecureProtobufLogReader.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/SecureProtobufLogReader.java
@@ -51,7 +51,7 @@ public class SecureProtobufLogReader extends ProtobufLogReader {
}
@Override
- protected List<String> getWriterClsNames() {
+ public List<String> getWriterClsNames() {
return writerClsNames;
}
http://git-wip-us.apache.org/repos/asf/hbase/blob/3f8780e1/hbase-server/src/main/java/org/apache/hadoop/hbase/wal/WALPrettyPrinter.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/wal/WALPrettyPrinter.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/wal/WALPrettyPrinter.java
index f0d1e67..e579164 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/wal/WALPrettyPrinter.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/wal/WALPrettyPrinter.java
@@ -47,6 +47,7 @@ import org.apache.hadoop.hbase.util.Bytes;
import org.apache.hadoop.hbase.util.FSUtils;
import org.codehaus.jackson.map.ObjectMapper;
+import org.apache.hadoop.hbase.regionserver.wal.ProtobufLogReader;
// imports for things that haven't moved yet.
import org.apache.hadoop.hbase.regionserver.wal.WALEdit;
@@ -242,11 +243,33 @@ public class WALPrettyPrinter {
if (!fs.isFile(p)) {
throw new IOException(p + " is not a file");
}
+
+ WAL.Reader log = WALFactory.createReader(fs, p, conf);
+
+ if (log instanceof ProtobufLogReader) {
+ List<String> writerClsNames = ((ProtobufLogReader) log).getWriterClsNames();
+ if (writerClsNames != null && writerClsNames.size() > 0) {
+ out.print("Writer Classes: ");
+ for (int i = 0; i < writerClsNames.size(); i++) {
+ out.print(writerClsNames.get(i));
+ if (i != writerClsNames.size() - 1) {
+ out.print(" ");
+ }
+ }
+ out.println();
+ }
+
+ String cellCodecClsName = ((ProtobufLogReader) log).getCodecClsName();
+ if (cellCodecClsName != null) {
+ out.println("Cell Codec Class: " + cellCodecClsName);
+ }
+ }
+
if (outputJSON && !persistentOutput) {
out.print("[");
firstTxn = true;
}
- WAL.Reader log = WALFactory.createReader(fs, p, conf);
+
try {
WAL.Entry entry;
while ((entry = log.next()) != null) {