Updated Branches: refs/heads/master 714733f0a -> 31c37843c
TEZ-45. Allow chaining of setters in the DAG and Vertex classes. (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/31c37843 Tree: http://git-wip-us.apache.org/repos/asf/incubator-tez/tree/31c37843 Diff: http://git-wip-us.apache.org/repos/asf/incubator-tez/diff/31c37843 Branch: refs/heads/master Commit: 31c37843ce47f95c818db56123a6fe20b2d35e48 Parents: 714733f Author: Siddharth Seth <[email protected]> Authored: Wed Jun 5 11:42:13 2013 -0700 Committer: Siddharth Seth <[email protected]> Committed: Wed Jun 5 11:42:13 2013 -0700 ---------------------------------------------------------------------- .../src/main/java/org/apache/tez/dag/api/DAG.java | 12 +++++--- .../main/java/org/apache/tez/dag/api/Vertex.java | 17 +++++++---- .../java/org/apache/tez/mapreduce/YARNRunner.java | 22 +++++++-------- 3 files changed, 29 insertions(+), 22 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-tez/blob/31c37843/tez-dag-api/src/main/java/org/apache/tez/dag/api/DAG.java ---------------------------------------------------------------------- diff --git a/tez-dag-api/src/main/java/org/apache/tez/dag/api/DAG.java b/tez-dag-api/src/main/java/org/apache/tez/dag/api/DAG.java index 7fa764a..f4185f2 100644 --- a/tez-dag-api/src/main/java/org/apache/tez/dag/api/DAG.java +++ b/tez-dag-api/src/main/java/org/apache/tez/dag/api/DAG.java @@ -50,15 +50,16 @@ public class DAG { // FIXME rename to Topology this.edges = new ArrayList<Edge>(); } - public synchronized void addVertex(Vertex vertex) { + public synchronized DAG addVertex(Vertex vertex) { if (vertices.contains(vertex)) { throw new IllegalArgumentException( "Vertex " + vertex + " already defined!"); } vertices.add(vertex); + return this; } - public synchronized void addEdge(Edge edge) { + public synchronized DAG addEdge(Edge edge) { // Sanity checks if (!vertices.contains(edge.getInputVertex())) { throw new IllegalArgumentException( @@ -78,14 +79,17 @@ public class DAG { // FIXME rename to Topology edge.getOutputVertex().addInputVertex(edge.getInputVertex(), edge.getId()); edges.add(edge); + return this; } - public void addConfiguration(String key, String value) { + public DAG addConfiguration(String key, String value) { config.put(key, value); + return this; } - public void setName(String name) { + public DAG setName(String name) { this.name = name; + return this; } // AnnotatedVertex is used by verify() http://git-wip-us.apache.org/repos/asf/incubator-tez/blob/31c37843/tez-dag-api/src/main/java/org/apache/tez/dag/api/Vertex.java ---------------------------------------------------------------------- diff --git a/tez-dag-api/src/main/java/org/apache/tez/dag/api/Vertex.java b/tez-dag-api/src/main/java/org/apache/tez/dag/api/Vertex.java index cbcac16..0d4d8fc 100644 --- a/tez-dag-api/src/main/java/org/apache/tez/dag/api/Vertex.java +++ b/tez-dag-api/src/main/java/org/apache/tez/dag/api/Vertex.java @@ -62,20 +62,22 @@ public class Vertex { // FIXME rename to Task return parallelism; } - public void setTaskResource(Resource resource) { + public Vertex setTaskResource(Resource resource) { this.taskResource = resource; + return this; } public Resource getTaskResource() { return taskResource; } - public void setTaskLocationsHint(TaskLocationHint[] locations) { + public Vertex setTaskLocationsHint(TaskLocationHint[] locations) { if (locations == null) { - return; + return this; } assert locations.length == parallelism; taskLocationsHint = new VertexLocationHint(parallelism, locations); + return this; } // used internally to create parallelism location resource file @@ -83,24 +85,27 @@ public class Vertex { // FIXME rename to Task return taskLocationsHint; } - public void setTaskLocalResources(Map<String, LocalResource> localResources) { + public Vertex setTaskLocalResources(Map<String, LocalResource> localResources) { this.taskLocalResources = localResources; + return this; } public Map<String, LocalResource> getTaskLocalResources() { return taskLocalResources; } - public void setTaskEnvironment(Map<String, String> environment) { + public Vertex setTaskEnvironment(Map<String, String> environment) { this.taskEnvironment = environment; + return this; } public Map<String, String> getTaskEnvironment() { return taskEnvironment; } - public void setJavaOpts(String javaOpts){ + public Vertex setJavaOpts(String javaOpts){ this. javaOpts = javaOpts; + return this; } public String getJavaOpts(){ http://git-wip-us.apache.org/repos/asf/incubator-tez/blob/31c37843/tez-yarn-client/src/main/java/org/apache/tez/mapreduce/YARNRunner.java ---------------------------------------------------------------------- diff --git a/tez-yarn-client/src/main/java/org/apache/tez/mapreduce/YARNRunner.java b/tez-yarn-client/src/main/java/org/apache/tez/mapreduce/YARNRunner.java index 592648e..94b2a98 100644 --- a/tez-yarn-client/src/main/java/org/apache/tez/mapreduce/YARNRunner.java +++ b/tez-yarn-client/src/main/java/org/apache/tez/mapreduce/YARNRunner.java @@ -494,12 +494,11 @@ public class YARNRunner implements ClientProtocol { reduceLocalResources.putAll(jobLocalResources); // TODO MRR Don't bother localizing the input splits for the reduce vertices. - vertex.setTaskEnvironment(reduceEnv); - vertex.setTaskLocalResources(reduceLocalResources); - vertex.setTaskLocationsHint(null); - vertex.setTaskResource(reduceResource); - - vertex.setJavaOpts(getReduceJavaOpts(conf)); + vertex.setTaskEnvironment(reduceEnv) + .setTaskLocalResources(reduceLocalResources) + .setTaskLocationsHint(null) + .setTaskResource(reduceResource) + .setJavaOpts(getReduceJavaOpts(conf)); return vertex; } @@ -572,12 +571,11 @@ public class YARNRunner implements ClientProtocol { new TreeMap<String, LocalResource>(); mapLocalResources.putAll(jobLocalResources); - mapVertex.setTaskEnvironment(mapEnv); - mapVertex.setTaskLocalResources(mapLocalResources); - mapVertex.setTaskLocationsHint(inputSplitLocations); - mapVertex.setTaskResource(mapResource); - - mapVertex.setJavaOpts(getMapJavaOpts(jobConf)); + mapVertex.setTaskEnvironment(mapEnv) + .setTaskLocalResources(mapLocalResources) + .setTaskLocationsHint(inputSplitLocations) + .setTaskResource(mapResource) + .setJavaOpts(getMapJavaOpts(jobConf)); if (LOG.isDebugEnabled()) { LOG.debug("Adding map vertex to DAG"
