Interesting; thanks Semih! I will try Graft out over the weekend.


> On Jun 4, 2014, at 11:00 AM, Semih Salihoglu <se...@stanford.edu> wrote:
> 
> Hi Giraph Users,
> 
> I wanted to introduce to you Graft, a project that some of us at Stanford 
> have built over the last quarter. If you are a Giraph user, who ran into an 
> annoying bug in which the code was throwing an exception or resulting in 
> incorrect looking messages or vertex values (e.g. NaNs or 
> NullPointerExceptions) and you had put in println statements into your 
> compute() functions, and then inspect logs of Hadoop workers for debugging 
> purposes, you should read on. You might find Graft very useful.
> 
> In a nutshell, Graft is based on the idea of capturing the contexts under 
> which a bug becomes noticeable (an exception is thrown or an incorrect 
> message is sent, or a vertex is assigned an incorrect value) 
> programmatically. The captured contexts can then be visualized through a GUI. 
> The contexts that a user thinks could be helpful for catching the bug can 
> then be reproduced in a compilable program and the user can then use his/her 
> favorite IDE's debugger to do step-by-step debugging into the context. For 
> example, when a vertex v throws an exception, the user can reproduce the 
> context under which v throws the exception and then use (say) Eclipse to do 
> step-by-step debugging to see exactly what lines were executed that resulted 
> in the exception being thrown.
> 
> On the testing side, Graft makes it easier to generate unit and end-to-end 
> tests by letting users curate small graphs through its GUI's testing mode, 
> and then generates code snippets which can be copied and pasted into a JUnit 
> test. 
> 
> The project is still under development but interested users can start using 
> it. We have a wiki with documentation and instructions on how to install and 
> use Graft: https://github.com/semihsalihoglu/graft/wiki. Since the project is 
> under development, we'd highly appreciate users to start using it and giving 
> us direction on how to make it more useful. Our emails are on the 
> documentation page. We also encourage interested developers to contribute to 
> it if there are requested features that we don't get to very quickly. 
> 
> Just a small note: Graft works for the Giraph at trunk: 
> https://github.com/apache/giraph/tree/trunk. We do not support earlier 
> version. In particular your programs need to be written by extending 
> Computation and optionally the Master class, instead of the older Vertex 
> class.
> 
> Best,
> 
> semih

Reply via email to