You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tez.apache.org by ss...@apache.org on 2013/08/30 17:53:58 UTC
git commit: TEZ-413. Log location hints when DEBUG logging is
enabled. (sseth)
Updated Branches:
refs/heads/master 33d0dcefb -> e1ed31b07
TEZ-413. Log location hints when DEBUG logging is enabled. (sseth)
Project: http://git-wip-us.apache.org/repos/asf/incubator-tez/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tez/commit/e1ed31b0
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tez/tree/e1ed31b0
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tez/diff/e1ed31b0
Branch: refs/heads/master
Commit: e1ed31b07453fdc63b616ddd4396bdb61b7a43c6
Parents: 33d0dce
Author: Siddharth Seth <ss...@apache.org>
Authored: Fri Aug 30 08:53:09 2013 -0700
Committer: Siddharth Seth <ss...@apache.org>
Committed: Fri Aug 30 08:53:09 2013 -0700
----------------------------------------------------------------------
.../apache/tez/dag/api/VertexLocationHint.java | 1 -
.../apache/tez/dag/app/dag/impl/VertexImpl.java | 36 ++++++++++++++++++++
2 files changed, 36 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-tez/blob/e1ed31b0/tez-dag-api/src/main/java/org/apache/tez/dag/api/VertexLocationHint.java
----------------------------------------------------------------------
diff --git a/tez-dag-api/src/main/java/org/apache/tez/dag/api/VertexLocationHint.java b/tez-dag-api/src/main/java/org/apache/tez/dag/api/VertexLocationHint.java
index d92250c..4f19314 100644
--- a/tez-dag-api/src/main/java/org/apache/tez/dag/api/VertexLocationHint.java
+++ b/tez-dag-api/src/main/java/org/apache/tez/dag/api/VertexLocationHint.java
@@ -18,7 +18,6 @@
package org.apache.tez.dag.api;
-import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.Set;
http://git-wip-us.apache.org/repos/asf/incubator-tez/blob/e1ed31b0/tez-dag/src/main/java/org/apache/tez/dag/app/dag/impl/VertexImpl.java
----------------------------------------------------------------------
diff --git a/tez-dag/src/main/java/org/apache/tez/dag/app/dag/impl/VertexImpl.java b/tez-dag/src/main/java/org/apache/tez/dag/app/dag/impl/VertexImpl.java
index 49a5fb2..b20ac2a 100644
--- a/tez-dag/src/main/java/org/apache/tez/dag/app/dag/impl/VertexImpl.java
+++ b/tez-dag/src/main/java/org/apache/tez/dag/app/dag/impl/VertexImpl.java
@@ -107,6 +107,8 @@ import org.apache.tez.engine.records.TezDependentTaskCompletionEvent;
import com.google.common.annotations.VisibleForTesting;
import com.google.common.base.Preconditions;
+import com.google.common.collect.HashMultiset;
+import com.google.common.collect.Multiset;
/** Implementation of Vertex interface. Maintains the state machines of Vertex.
@@ -387,6 +389,9 @@ public class VertexImpl implements org.apache.tez.dag.app.dag.Vertex,
this.credentials = credentials;
this.committer = new NullVertexOutputCommitter();
this.vertexLocationHint = vertexLocationHint;
+ if (LOG.isDebugEnabled()) {
+ logLocationHints(this.vertexLocationHint);
+ }
this.taskResource = DagTypeConverters
.createResourceRequestFromTaskConfig(vertexPlan.getTaskConfig());
@@ -1495,5 +1500,36 @@ public class VertexImpl implements org.apache.tez.dag.app.dag.Vertex,
VertexScheduler getVertexScheduler() {
return this.vertexScheduler;
}
+
+ private static void logLocationHints(VertexLocationHint locationHint) {
+ Multiset<String> hosts = HashMultiset.create();
+ Multiset<String> racks = HashMultiset.create();
+ int counter = 0;
+ for (TaskLocationHint taskLocationHint : locationHint
+ .getTaskLocationHints()) {
+ StringBuilder sb = new StringBuilder();
+ sb.append("Hosts: ");
+ for (String host : taskLocationHint.getDataLocalHosts()) {
+ hosts.add(host);
+ sb.append(host).append(", ");
+ }
+ sb.append("Racks: ");
+ for (String rack : taskLocationHint.getRacks()) {
+ racks.add(rack);
+ sb.append(rack).append(", ");
+ }
+ LOG.debug("Location: " + counter + " : " + sb.toString());
+ counter++;
+ }
+
+ LOG.debug("Host Counts");
+ for (Multiset.Entry<String> host : hosts.entrySet()) {
+ LOG.debug("host: " + host.toString());
+ }
+ LOG.debug("Rack Counts");
+ for (Multiset.Entry<String> rack : racks.entrySet()) {
+ LOG.debug("rack: " + rack.toString());
+ }
+ }
}