PIG-5037: Add api getDisplayString to PigStats (zjffdu)
git-svn-id: https://svn.apache.org/repos/asf/pig/trunk@1766465 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/CHANGES.txt b/CHANGES.txt
index 6478863..4051e23 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -24,6 +24,8 @@
IMPROVEMENTS
+PIG-5037: Add api getDisplayString to PigStats (zjffdu)
+
PIG-5020: Give file location for loadcaster related warning and errors (knoguchi)
PIG-5027: Improve SAMPLE Scalar Expression Example (icook via knoguchi)
diff --git a/src/org/apache/pig/tools/pigstats/EmbeddedPigStats.java b/src/org/apache/pig/tools/pigstats/EmbeddedPigStats.java
index 45135b6..87d29c4 100644
--- a/src/org/apache/pig/tools/pigstats/EmbeddedPigStats.java
+++ b/src/org/apache/pig/tools/pigstats/EmbeddedPigStats.java
@@ -147,6 +147,11 @@
}
@Override
+ public String getDisplayString() {
+ return null;
+ }
+
+ @Override
public long getProactiveSpillCountObjects() {
throw new UnsupportedOperationException();
}
diff --git a/src/org/apache/pig/tools/pigstats/EmptyPigStats.java b/src/org/apache/pig/tools/pigstats/EmptyPigStats.java
index 8151978..9e44c50 100644
--- a/src/org/apache/pig/tools/pigstats/EmptyPigStats.java
+++ b/src/org/apache/pig/tools/pigstats/EmptyPigStats.java
@@ -87,6 +87,11 @@
}
@Override
+ public String getDisplayString() {
+ return null;
+ }
+
+ @Override
public JobGraph getJobGraph() {
return emptyJobPlan;
}
diff --git a/src/org/apache/pig/tools/pigstats/PigStats.java b/src/org/apache/pig/tools/pigstats/PigStats.java
index 75e561d..4f41a98 100644
--- a/src/org/apache/pig/tools/pigstats/PigStats.java
+++ b/src/org/apache/pig/tools/pigstats/PigStats.java
@@ -134,6 +134,11 @@
}
/**
+ * Returns the display message in pig grunt
+ */
+ public abstract String getDisplayString();
+
+ /**
* Returns the DAG of jobs spawned by the script
*/
public JobGraph getJobGraph() {
diff --git a/src/org/apache/pig/tools/pigstats/mapreduce/SimplePigStats.java b/src/org/apache/pig/tools/pigstats/mapreduce/SimplePigStats.java
index eceb8e7..e3c67aa 100644
--- a/src/org/apache/pig/tools/pigstats/mapreduce/SimplePigStats.java
+++ b/src/org/apache/pig/tools/pigstats/mapreduce/SimplePigStats.java
@@ -207,13 +207,18 @@
}
void display() {
+ LOG.info(getDisplayString());
+ }
+
+ @Override
+ public String getDisplayString() {
if (returnCode == ReturnCode.UNKNOWN) {
LOG.warn("unknown return code, can't display the results");
- return;
+ return "";
}
if (pigContext == null) {
LOG.warn("unknown exec type, don't display the results");
- return;
+ return "";
}
SimpleDateFormat sdf = new SimpleDateFormat(DATE_FORMAT);
@@ -276,7 +281,7 @@
sb.append("\nJob DAG:\n").append(jobPlan.toString());
- LOG.info("Script Statistics: \n" + sb.toString());
+ return "Script Statistics: \n" + sb.toString();
}
void mapMROperToJob(MapReduceOper mro, Job job) {
diff --git a/src/org/apache/pig/tools/pigstats/tez/TezPigScriptStats.java b/src/org/apache/pig/tools/pigstats/tez/TezPigScriptStats.java
index a52a51a..5137390 100644
--- a/src/org/apache/pig/tools/pigstats/tez/TezPigScriptStats.java
+++ b/src/org/apache/pig/tools/pigstats/tez/TezPigScriptStats.java
@@ -117,6 +117,11 @@
}
private void display() {
+ LOG.info(getDisplayString());
+ }
+
+ @Override
+ public String getDisplayString() {
SimpleDateFormat sdf = new SimpleDateFormat(DATE_FORMAT);
StringBuilder sb = new StringBuilder();
sb.append("\n");
@@ -170,7 +175,7 @@
for (OutputStats os : getOutputStats()) {
sb.append(os.getDisplayString().trim()).append("\n");
}
- LOG.info("Script Statistics:\n" + sb.toString());
+ return "Script Statistics:\n" + sb.toString();
}
/**