From 3c0d4f0ebb1c847467d73e275323bb228b3bb73a Mon Sep 17 00:00:00 2001 From: Andrew Or Date: Wed, 6 May 2015 15:58:22 -0700 Subject: [PATCH] Guard against JS error by rendering arrows only if needed --- .../org/apache/spark/ui/static/spark-dag-viz.js | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/core/src/main/resources/org/apache/spark/ui/static/spark-dag-viz.js b/core/src/main/resources/org/apache/spark/ui/static/spark-dag-viz.js index b8d3a034ac512..eb9cf50055cb7 100644 --- a/core/src/main/resources/org/apache/spark/ui/static/spark-dag-viz.js +++ b/core/src/main/resources/org/apache/spark/ui/static/spark-dag-viz.js @@ -334,11 +334,13 @@ function drawCrossStageEdges(edges, svgContainer) { } // Now draw the arrows by borrowing the arrow marker generated by dagre-d3 var dagreD3Marker = svgContainer.select("g.edgePaths marker").node(); - svgContainer - .append(function() { return dagreD3Marker.cloneNode(true); }) - .attr("id", "marker-arrow") - svgContainer.selectAll("g > path").attr("marker-end", "url(#marker-arrow)"); - svgContainer.selectAll("g.edgePaths def").remove(); // We no longer need these + if (!dagreD3Marker.empty()) { + svgContainer + .append(function() { return dagreD3Marker.cloneNode(true); }) + .attr("id", "marker-arrow") + svgContainer.selectAll("g > path").attr("marker-end", "url(#marker-arrow)"); + svgContainer.selectAll("g.edgePaths def").remove(); // We no longer need these + } } /*