[ 
https://issues.apache.org/jira/browse/OOZIE-2406?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16170899#comment-16170899
 ] 

Robert Kanter commented on OOZIE-2406:
--------------------------------------

1. The advantage of removing the {{JungRenderer}} is that we could remove the 
jung and Commons-Collections fork dependencies.  I'm okay with leaving it for 
now if we want to give the {{GraphvizRenderer}} more time to bake.  However, it 
looks like {{GraphGenerator}} is hardcoded to use {{GraphvizRenderer}} so you 
can't use the {{JungRenderer}} anyway.
2. We should add Metrics/Instrumentation in key areas of the generator code.  
That might be helpful for performance testing, and would be a useful thing to 
expose anyway.  e.g. how long it takes to generate the graph, how long it takes 
to render the png, etc

> Completely rewrite GraphGenerator code
> --------------------------------------
>
>                 Key: OOZIE-2406
>                 URL: https://issues.apache.org/jira/browse/OOZIE-2406
>             Project: Oozie
>          Issue Type: New Feature
>    Affects Versions: 4.2.0
>            Reporter: Robert Kanter
>            Assignee: Andras Piros
>             Fix For: 5.0.0
>
>         Attachments: graphviz-10-action-nodes.png, 
> graphviz-25-action-nodes.png, graphviz-50-action-nodes.png, 
> graphviz-many-nodes.png, jung-many-nodes.png, OOZIE-2406.004.patch, 
> OOZIE-2406.004.patch, OOZIE-2406.005.patch, OOZIE-2406.006.patch
>
>
> The Web UI currently generates a graph of the workflow DAG as a png image 
> that it can show to the user ({{GraphGenerator}} class).  Unfortunately, 
> there are a number of downsides to the current implementation:
> # The image is generated server-side, which doesn't scale well and eats up 
> lots of memory
> #- To help combat this issue, we only generate graphs for workflows with less 
> than 25 nodes and we disabled the refresh button in the UI
> # It's slow
> # It uses a library ({{net.sf.jung}} from http://jung.sourceforge.net), which 
> hasn't been updated since 2010.  
> #- This library also has a dependency on a fork of Commons-Collections 
> ({{net.sourceforge.collections}} from 
> http://sourceforge.net/projects/collections/), which similarly hasn't been 
> updated since 2010.  This is a problem because we can't update 
> Commons-Collections when there are security concerns such as COLLECTIONS-580 
> (though Oozie is *not* susceptible to this attack).
> It would be good to do a complete rewrite, using a different library and 
> remove Jung and the Commons-Collections fork.  Whatever we choose, it should 
> an svg which will draw the image on the browser.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to