You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@giraph.apache.org by Jaeho Shin <Ja...@Gmail.com> on 2014/09/24 03:07:41 UTC
Review Request 25971: Adds Giraph Debugger (Graft) to Giraph trunk
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/25971/
-----------------------------------------------------------
Review request for giraph and Sergey Edunov.
Bugs: GIRAPH-905
https://issues.apache.org/jira/browse/GIRAPH-905
Repository: giraph-git
Description
-------
A rather large patch to include Giraph Debugger (Graft) in Giraph trunk. Based on [222e5e of semihsalihoglu/graft](https://github.com/semihsalihoglu/graft/commit/222e5e7c86c3c4122c1b88336b17966d4e7728d0).
Diffs
-----
giraph-core/src/main/java/org/apache/giraph/master/MasterCompute.java 552cca9
giraph-debugger/.gitignore PRE-CREATION
giraph-debugger/README.md PRE-CREATION
giraph-debugger/giraph-debug PRE-CREATION
giraph-debugger/gui PRE-CREATION
giraph-debugger/pom.xml PRE-CREATION
giraph-debugger/src/main/assembly/compile.xml PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/CommandLine.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/DebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/exceptiondebug/BuggySimpleTriangleClosingComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/exceptiondebug/SimpleTriangleClosingDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/exceptiondebug/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggyConnectedComponentsDebugComputationModified.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggyConnectedComponentsDebugComputationToRun.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggySimpleShortestPathsDebugComputationModified.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggySimpleShortestPathsDebugComputationToRun.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggySimpleTriangleClosingDebugComputationModified.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggySimpleTriangleClosingDebugComputationToRun.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/BuggyConnectedComponentsComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/ConnectedComponentsMsgIntegrityDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/ConnectedComponentsVValueIntegrityDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/BuggySimpleShortestPathsComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/SimpleShortestPathsDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/SimpleShortestPathsMaster.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/Server.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerHttpHandler.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerUtils.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/AbstractInterceptingComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/AbstractInterceptingMasterCompute.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/BottomInterceptingComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/BottomInterceptingMasterCompute.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/CommonVertexMasterInterceptionUtil.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/InstrumentGiraphClasses.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/Intercept.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/UserComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/UserMasterCompute.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/ComputationComputeTestGenerator.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/FormatHelper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/MasterComputeTestGenerator.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/PrefixedClasspathResourceLoader.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/TestGenerator.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/TestGraphGenerator.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/VelocityBasedGenerator.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/AggregatedValueWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/AggregatorWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/BaseScenarioAndIntegrityWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/BaseWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/CommonVertexMasterContextWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/DebuggerUtils.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/ExceptionWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/GiraphMasterScenarioWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/GiraphVertexScenarioWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/MsgIntegrityViolationWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/package-info.java PRE-CREATION
giraph-debugger/src/main/protobuf/giraph_aggregator.proto PRE-CREATION
giraph-debugger/src/main/protobuf/integrity.proto PRE-CREATION
giraph-debugger/src/main/protobuf/scenario.proto PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/css/app.css PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/css/slider/slider.css PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/css/valpanel.css PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/img/details_close.png PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/img/details_open.png PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/img/preloader.gif PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/index.html PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/debugger.js PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/editor.core.js PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/editor.utils.js PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/slider/bootstrap-slider.js PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/utils.js PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/utils.sampleGraphs.js PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/valpanel.js PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ComputeSetUpFuncTemplate.vm PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ComputeTestFuncTemplate.vm PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ComputeTestTemplate.vm PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/MasterComputeTestTemplate.vm PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ReadWritableFromByteArrayTemplate.vm PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ReadWritableFromStringTemplate.vm PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/TestGraphTemplate.vm PRE-CREATION
giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/BaseComputation.java PRE-CREATION
giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/CommonDebugConfig.java PRE-CREATION
giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/DerivedComputation.java PRE-CREATION
giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/package-info.java PRE-CREATION
Diff: https://reviews.apache.org/r/25971/diff/
Testing
-------
Manually followed the steps for debugging shown in the [giraph-debugger/README.md](https://github.com/semihsalihoglu/graft#launching-giraph-jobs-with-graft), and confirmed generated test codes for Computation.compute() and MasterCompute with GUI and CLI reproduces the context.
For launching a buggy example (included under giraph-debugger), used the following command:
```
../giraph-debugger/giraph-debug ../giraph-debugger/target/giraph-debugger-1.1.0-SNAPSHOT-for-hadoop-1.2.1-jar-with-dependencies.jar org.apache.giraph.GiraphRunner org.apache.giraph.debugger.examples.simpledebug.BuggySimpleShortestPathsComputation -mc org.apache.giraph.debugger.examples.simpledebug.SimpleShortestPathsMaster -vif org.apache.giraph.io.formats.JsonLongDoubleFloatDoubleVertexInputFormat -vip shortestPathsInputGraph -vof org.apache.giraph.io.formats.IdWithValueTextOutputFormat -op shortestPathsOutputGraph.$RANDOM -w 1 -ca giraph.SplitMasterWorker=false #
```
Thanks,
Jaeho Shin
Re: Review Request 25971: Adds Giraph Debugger (Graft) to Giraph trunk
Posted by Jaeho Shin <Ja...@Gmail.com>.
> On 10 17, 2014, 5:53 오후, Sergey Edunov wrote:
> > giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerHttpHandler.java, line 153
> > <https://reviews.apache.org/r/25971/diff/1/?file=703839#file703839line153>
> >
> > NumberFormatException extends IllegalArgumentException so this condition is always false
Moved the catch up.
> On 10 17, 2014, 5:53 오후, Sergey Edunov wrote:
> > giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerHttpHandler.java, line 132
> > <https://reviews.apache.org/r/25971/diff/1/?file=703839#file703839line132>
> >
> > Can you please use standard javadoc tags?
Done.
> On 10 17, 2014, 5:53 오후, Sergey Edunov wrote:
> > giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerHttpHandler.java, line 123
> > <https://reviews.apache.org/r/25971/diff/1/?file=703839#file703839line123>
> >
> > Why would you need it?
We used to have the GUI client access server from different domains, so the CORS headers were there. As it's always hosted on the same server now, fine to remove.
> On 10 17, 2014, 5:53 오후, Sergey Edunov wrote:
> > giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/Server.java, line 169
> > <https://reviews.apache.org/r/25971/diff/1/?file=703838#file703838line169>
> >
> > Will it be replaced with something real?
It turns out this is dead code. Removed.
> On 10 17, 2014, 5:53 오후, Sergey Edunov wrote:
> > giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/Server.java, line 194
> > <https://reviews.apache.org/r/25971/diff/1/?file=703838#file703838line194>
> >
> > Is it some custom tag library? Maybe you want annotation instead? I'm not sure what it means
Not sure where this syntax came from. Unfolded to plain text.
> On 10 17, 2014, 5:53 오후, Sergey Edunov wrote:
> > giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/BaseWrapper.java, line 190
> > <https://reviews.apache.org/r/25971/diff/1/?file=703864#file703864line190>
> >
> > just
> > method.invoke(urlClassLoader, u);
> > will work fine
Thanks, done.
> On 10 17, 2014, 5:53 오후, Sergey Edunov wrote:
> > giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/AbstractInterceptingComputation.java, line 102
> > <https://reviews.apache.org/r/25971/diff/1/?file=703842#file703842line102>
> >
> > These fields are not constants, so should not be named with uppercase letters. And I'm not sure why they made static too. Is it necessary?
Checkstyle said all static fields should be in uppercase, so we had to rename all of them. The idea of making them static was to limit the number of vertices logged per worker (JVM), instead of per partition (instance).
> On 10 17, 2014, 5:53 오후, Sergey Edunov wrote:
> > giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/InstrumentGiraphClasses.java, line 149
> > <https://reviews.apache.org/r/25971/diff/1/?file=703847#file703847line149>
> >
> > Just createTempDirectory(TMP_DIR_NAME_PREFIX) will work
Done.
> On 10 17, 2014, 5:53 오후, Sergey Edunov wrote:
> > giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/InstrumentGiraphClasses.java, line 166
> > <https://reviews.apache.org/r/25971/diff/1/?file=703847#file703847line166>
> >
> > Do e.printStackTrace() at least. We should know which classes were not found.
Sounds good. Done.
> On 10 17, 2014, 5:53 오후, Sergey Edunov wrote:
> > giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/InstrumentGiraphClasses.java, line 202
> > <https://reviews.apache.org/r/25971/diff/1/?file=703847#file703847line202>
> >
> > Either mc or masterComputeClass is redundand
Done.
> On 10 17, 2014, 5:53 오후, Sergey Edunov wrote:
> > giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/InstrumentGiraphClasses.java, line 298
> > <https://reviews.apache.org/r/25971/diff/1/?file=703847#file703847line298>
> >
> > targetTopClass is always CtClass, how can this equals be satisfied? Did you mean
> > targetTopClass.toClass().equals(Object.class) ?
Thanks for catching this. It was a safeguard to prevent infinite loop that doesn't happen in normal runs, but good to have it fixed. Method toClass() couldn't be used as it would create duplicate Object.class, so compared the class name instead.
> On 10 17, 2014, 5:53 오후, Sergey Edunov wrote:
> > giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerHttpHandler.java, line 32
> > <https://reviews.apache.org/r/25971/diff/1/?file=703839#file703839line32>
> >
> > I'm not sure about our policy on using oracle specific features. How hard it would be to switch to jetty? We already have it in classpath anyway.
Can we migrate this to Jetty in a subsequent JIRA issue? I'm afraid we won't have the capacity to reimplement this part for now.
- Jaeho
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/25971/#review57157
-----------------------------------------------------------
On 11월 5, 2014, 12:52 오전, Jaeho Shin wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/25971/
> -----------------------------------------------------------
>
> (Updated 11월 5, 2014, 12:52 오전)
>
>
> Review request for giraph and Sergey Edunov.
>
>
> Bugs: GIRAPH-905
> https://issues.apache.org/jira/browse/GIRAPH-905
>
>
> Repository: giraph-git
>
>
> Description
> -------
>
> A rather large patch to include Giraph Debugger (Graft) in Giraph trunk. Based on [222e5e of semihsalihoglu/graft](https://github.com/semihsalihoglu/graft/commit/222e5e7c86c3c4122c1b88336b17966d4e7728d0).
>
>
> Diffs
> -----
>
> giraph-core/src/main/java/org/apache/giraph/master/MasterCompute.java 68eb416
> giraph-core/src/main/java/org/apache/giraph/worker/WorkerAggregatorDelegator.java 916e7a0
> giraph-debugger/.gitignore PRE-CREATION
> giraph-debugger/README.md PRE-CREATION
> giraph-debugger/giraph-debug PRE-CREATION
> giraph-debugger/gui PRE-CREATION
> giraph-debugger/pom.xml PRE-CREATION
> giraph-debugger/src/main/assembly/compile.xml PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/CommandLine.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/DebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/BipartiteGraphInputFormat.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/BipartiteGraphOutputFormat.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/TextAdjacencyListInputFormat.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/TextAdjacencyListLongIDDoubleEdgeWeightInputFormat.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/Message.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/RandomizedMaximalMatchingComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/RandomizedMaximalMatchingComputation2FixedLeft.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/RandomizedMaximalMatchingComputation3FixedRight.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/VertexValue.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/bipartitegraph-1.json PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/exceptiondebug/BuggySimpleTriangleClosingComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/exceptiondebug/SimpleTriangleClosingDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/exceptiondebug/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringMaster.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringMessageConstraintDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringVertexValueConstraintDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/Message.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/VertexValue.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggyConnectedComponentsDebugComputationModified.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggySimpleShortestPathsDebugComputationModified.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggySimpleTriangleClosingDebugComputationModified.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/BuggyConnectedComponentsComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/CCFindingMissingReverseEdgeMsgIntegrityDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/ConnectedComponentsDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/ConnectedComponentsMsgIntegrityDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/ConnectedComponentsRandomVerticesDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/ConnectedComponentsVValueIntegrityDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/MWMComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/MWMDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/MWMMessageConstraintDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/MWMVertexValueConstraintDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/VertexValue.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/pagerank/SimplePageRankComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/pagerank/SimplePageRankMasterCompute.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/pagerank/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/RandomWalkComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/RandomWalkDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/RandomWalkMessageConstraintDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/RandomWalkVertexValueConstraintDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/BuggySimpleShortestPathsComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/SimpleShortestPathsDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/SimpleShortestPathsMaster.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/Server.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerHttpHandler.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerUtils.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/AbstractInterceptingComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/AbstractInterceptingMasterCompute.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/BottomInterceptingComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/BottomInterceptingMasterCompute.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/CommonVertexMasterInterceptionUtil.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/InstrumentGiraphClasses.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/Intercept.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/UserComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/UserMasterCompute.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/ComputationComputeTestGenerator.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/FormatHelper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/MasterComputeTestGenerator.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/PrefixedClasspathResourceLoader.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/TestGenerator.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/TestGraphGenerator.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/VelocityBasedGenerator.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/AggregatedValueWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/AggregatorWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/AsyncHDFSWriteService.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/BaseScenarioAndIntegrityWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/BaseWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/CommonVertexMasterContextWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/DebuggerUtils.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/ExceptionWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/GiraphMasterScenarioWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/GiraphVertexScenarioWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/MsgIntegrityViolationWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/package-info.java PRE-CREATION
> giraph-debugger/src/main/protobuf/giraph_aggregator.proto PRE-CREATION
> giraph-debugger/src/main/protobuf/integrity.proto PRE-CREATION
> giraph-debugger/src/main/protobuf/scenario.proto PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/css/app.css PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/css/slider/slider.css PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/css/valpanel.css PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/img/details_close.png PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/img/details_open.png PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/img/preloader.gif PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/index.html PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/debugger.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/editor.core.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/editor.utils.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/slider/bootstrap-slider.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/utils.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/utils.sampleGraphs.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/valpanel.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ComputeSetUpFuncTemplate.vm PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ComputeTestFuncTemplate.vm PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ComputeTestTemplate.vm PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/MasterComputeTestTemplate.vm PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ReadWritableFromByteArrayTemplate.vm PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ReadWritableFromStringTemplate.vm PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/TestGraphTemplate.vm PRE-CREATION
> giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/BaseComputation.java PRE-CREATION
> giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/CommonDebugConfig.java PRE-CREATION
> giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/DerivedComputation.java PRE-CREATION
> giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/package-info.java PRE-CREATION
>
> Diff: https://reviews.apache.org/r/25971/diff/
>
>
> Testing
> -------
>
> Manually followed the steps for debugging shown in the [giraph-debugger/README.md](https://github.com/semihsalihoglu/graft#launching-giraph-jobs-with-graft), and confirmed generated test codes for Computation.compute() and MasterCompute with GUI and CLI reproduces the context.
>
> For launching a buggy example (included under giraph-debugger), used the following command:
> ```
> ../giraph-debugger/giraph-debug ../giraph-debugger/target/giraph-debugger-1.1.0-SNAPSHOT-for-hadoop-1.2.1-jar-with-dependencies.jar org.apache.giraph.GiraphRunner org.apache.giraph.debugger.examples.simpledebug.BuggySimpleShortestPathsComputation -mc org.apache.giraph.debugger.examples.simpledebug.SimpleShortestPathsMaster -vif org.apache.giraph.io.formats.JsonLongDoubleFloatDoubleVertexInputFormat -vip shortestPathsInputGraph -vof org.apache.giraph.io.formats.IdWithValueTextOutputFormat -op shortestPathsOutputGraph.$RANDOM -w 1 -ca giraph.SplitMasterWorker=false #
> ```
>
>
> Thanks,
>
> Jaeho Shin
>
>
Re: Review Request 25971: Adds Giraph Debugger (Graft) to Giraph trunk
Posted by Sergey Edunov <ed...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/25971/#review57157
-----------------------------------------------------------
giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/Server.java
<https://reviews.apache.org/r/25971/#comment97661>
Will it be replaced with something real?
giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/Server.java
<https://reviews.apache.org/r/25971/#comment97659>
Is it some custom tag library? Maybe you want annotation instead? I'm not sure what it means
giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerHttpHandler.java
<https://reviews.apache.org/r/25971/#comment97641>
I'm not sure about our policy on using oracle specific features. How hard it would be to switch to jetty? We already have it in classpath anyway.
giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerHttpHandler.java
<https://reviews.apache.org/r/25971/#comment97652>
Why would you need it?
giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerHttpHandler.java
<https://reviews.apache.org/r/25971/#comment97654>
Can you please use standard javadoc tags?
giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerHttpHandler.java
<https://reviews.apache.org/r/25971/#comment97658>
NumberFormatException extends IllegalArgumentException so this condition is always false
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/AbstractInterceptingComputation.java
<https://reviews.apache.org/r/25971/#comment97633>
These fields are not constants, so should not be named with uppercase letters. And I'm not sure why they made static too. Is it necessary?
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/InstrumentGiraphClasses.java
<https://reviews.apache.org/r/25971/#comment97684>
Just createTempDirectory(TMP_DIR_NAME_PREFIX) will work
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/InstrumentGiraphClasses.java
<https://reviews.apache.org/r/25971/#comment97681>
Do e.printStackTrace() at least. We should know which classes were not found.
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/InstrumentGiraphClasses.java
<https://reviews.apache.org/r/25971/#comment97686>
Either mc or masterComputeClass is redundand
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/InstrumentGiraphClasses.java
<https://reviews.apache.org/r/25971/#comment97679>
targetTopClass is always CtClass, how can this equals be satisfied? Did you mean
targetTopClass.toClass().equals(Object.class) ?
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/BaseWrapper.java
<https://reviews.apache.org/r/25971/#comment97663>
just
method.invoke(urlClassLoader, u);
will work fine
This diff is huge and takes a lot of time to comprehend, I focussed on code quality issues now and will need another pass for more general issues.
- Sergey Edunov
On Sept. 24, 2014, 1:07 a.m., Jaeho Shin wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/25971/
> -----------------------------------------------------------
>
> (Updated Sept. 24, 2014, 1:07 a.m.)
>
>
> Review request for giraph and Sergey Edunov.
>
>
> Bugs: GIRAPH-905
> https://issues.apache.org/jira/browse/GIRAPH-905
>
>
> Repository: giraph-git
>
>
> Description
> -------
>
> A rather large patch to include Giraph Debugger (Graft) in Giraph trunk. Based on [222e5e of semihsalihoglu/graft](https://github.com/semihsalihoglu/graft/commit/222e5e7c86c3c4122c1b88336b17966d4e7728d0).
>
>
> Diffs
> -----
>
> giraph-core/src/main/java/org/apache/giraph/master/MasterCompute.java 552cca9
> giraph-debugger/.gitignore PRE-CREATION
> giraph-debugger/README.md PRE-CREATION
> giraph-debugger/giraph-debug PRE-CREATION
> giraph-debugger/gui PRE-CREATION
> giraph-debugger/pom.xml PRE-CREATION
> giraph-debugger/src/main/assembly/compile.xml PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/CommandLine.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/DebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/exceptiondebug/BuggySimpleTriangleClosingComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/exceptiondebug/SimpleTriangleClosingDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/exceptiondebug/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggyConnectedComponentsDebugComputationModified.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggyConnectedComponentsDebugComputationToRun.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggySimpleShortestPathsDebugComputationModified.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggySimpleShortestPathsDebugComputationToRun.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggySimpleTriangleClosingDebugComputationModified.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggySimpleTriangleClosingDebugComputationToRun.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/BuggyConnectedComponentsComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/ConnectedComponentsMsgIntegrityDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/ConnectedComponentsVValueIntegrityDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/BuggySimpleShortestPathsComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/SimpleShortestPathsDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/SimpleShortestPathsMaster.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/Server.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerHttpHandler.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerUtils.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/AbstractInterceptingComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/AbstractInterceptingMasterCompute.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/BottomInterceptingComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/BottomInterceptingMasterCompute.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/CommonVertexMasterInterceptionUtil.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/InstrumentGiraphClasses.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/Intercept.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/UserComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/UserMasterCompute.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/ComputationComputeTestGenerator.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/FormatHelper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/MasterComputeTestGenerator.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/PrefixedClasspathResourceLoader.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/TestGenerator.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/TestGraphGenerator.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/VelocityBasedGenerator.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/AggregatedValueWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/AggregatorWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/BaseScenarioAndIntegrityWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/BaseWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/CommonVertexMasterContextWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/DebuggerUtils.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/ExceptionWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/GiraphMasterScenarioWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/GiraphVertexScenarioWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/MsgIntegrityViolationWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/package-info.java PRE-CREATION
> giraph-debugger/src/main/protobuf/giraph_aggregator.proto PRE-CREATION
> giraph-debugger/src/main/protobuf/integrity.proto PRE-CREATION
> giraph-debugger/src/main/protobuf/scenario.proto PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/css/app.css PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/css/slider/slider.css PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/css/valpanel.css PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/img/details_close.png PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/img/details_open.png PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/img/preloader.gif PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/index.html PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/debugger.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/editor.core.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/editor.utils.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/slider/bootstrap-slider.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/utils.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/utils.sampleGraphs.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/valpanel.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ComputeSetUpFuncTemplate.vm PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ComputeTestFuncTemplate.vm PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ComputeTestTemplate.vm PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/MasterComputeTestTemplate.vm PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ReadWritableFromByteArrayTemplate.vm PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ReadWritableFromStringTemplate.vm PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/TestGraphTemplate.vm PRE-CREATION
> giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/BaseComputation.java PRE-CREATION
> giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/CommonDebugConfig.java PRE-CREATION
> giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/DerivedComputation.java PRE-CREATION
> giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/package-info.java PRE-CREATION
>
> Diff: https://reviews.apache.org/r/25971/diff/
>
>
> Testing
> -------
>
> Manually followed the steps for debugging shown in the [giraph-debugger/README.md](https://github.com/semihsalihoglu/graft#launching-giraph-jobs-with-graft), and confirmed generated test codes for Computation.compute() and MasterCompute with GUI and CLI reproduces the context.
>
> For launching a buggy example (included under giraph-debugger), used the following command:
> ```
> ../giraph-debugger/giraph-debug ../giraph-debugger/target/giraph-debugger-1.1.0-SNAPSHOT-for-hadoop-1.2.1-jar-with-dependencies.jar org.apache.giraph.GiraphRunner org.apache.giraph.debugger.examples.simpledebug.BuggySimpleShortestPathsComputation -mc org.apache.giraph.debugger.examples.simpledebug.SimpleShortestPathsMaster -vif org.apache.giraph.io.formats.JsonLongDoubleFloatDoubleVertexInputFormat -vip shortestPathsInputGraph -vof org.apache.giraph.io.formats.IdWithValueTextOutputFormat -op shortestPathsOutputGraph.$RANDOM -w 1 -ca giraph.SplitMasterWorker=false #
> ```
>
>
> Thanks,
>
> Jaeho Shin
>
>
Re: Review Request 25971: Adds Giraph Debugger (Graft) to Giraph trunk
Posted by Jaeho Shin <Ja...@Gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/25971/
-----------------------------------------------------------
(Updated 11월 14, 2014, 1:29 오전)
Review request for giraph and Sergey Edunov.
Changes
-------
Thanks for your review! PTAL
Bugs: GIRAPH-905
https://issues.apache.org/jira/browse/GIRAPH-905
Repository: giraph-git
Description
-------
A rather large patch to include Giraph Debugger (Graft) in Giraph trunk. Based on [222e5e of semihsalihoglu/graft](https://github.com/semihsalihoglu/graft/commit/222e5e7c86c3c4122c1b88336b17966d4e7728d0).
Diffs (updated)
-----
giraph-core/src/main/java/org/apache/giraph/master/MasterCompute.java 68eb416
giraph-core/src/main/java/org/apache/giraph/worker/WorkerAggregatorDelegator.java 916e7a0
giraph-debugger/.gitignore PRE-CREATION
giraph-debugger/README.md PRE-CREATION
giraph-debugger/giraph-debug PRE-CREATION
giraph-debugger/gui PRE-CREATION
giraph-debugger/pom.xml PRE-CREATION
giraph-debugger/src/main/assembly/compile.xml PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/CommandLine.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/DebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/BipartiteGraphInputFormat.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/BipartiteGraphOutputFormat.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/TextAdjacencyListInputFormat.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/TextAdjacencyListLongIDDoubleEdgeWeightInputFormat.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/Message.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/RandomizedMaximalMatchingComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/RandomizedMaximalMatchingComputation2FixedLeft.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/RandomizedMaximalMatchingComputation3FixedRight.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/VertexValue.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/bipartitegraph-1.json PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/exceptiondebug/BuggySimpleTriangleClosingComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/exceptiondebug/SimpleTriangleClosingDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/exceptiondebug/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringMaster.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringMessageConstraintDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringVertexValueConstraintDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/Message.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/VertexValue.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggyConnectedComponentsDebugComputationModified.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggySimpleShortestPathsDebugComputationModified.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggySimpleTriangleClosingDebugComputationModified.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/BuggyConnectedComponentsComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/CCFindingMissingReverseEdgeMsgIntegrityDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/ConnectedComponentsDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/ConnectedComponentsMsgIntegrityDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/ConnectedComponentsRandomVerticesDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/ConnectedComponentsVValueIntegrityDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/MWMComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/MWMDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/MWMMessageConstraintDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/MWMVertexValueConstraintDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/VertexValue.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/pagerank/SimplePageRankComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/pagerank/SimplePageRankMasterCompute.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/pagerank/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/RandomWalkComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/RandomWalkDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/RandomWalkMessageConstraintDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/RandomWalkVertexValueConstraintDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/BuggySimpleShortestPathsComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/SimpleShortestPathsDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/SimpleShortestPathsMaster.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/Server.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerHttpHandler.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerUtils.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/AbstractInterceptingComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/AbstractInterceptingMasterCompute.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/BottomInterceptingComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/BottomInterceptingMasterCompute.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/CommonVertexMasterInterceptionUtil.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/InstrumentGiraphClasses.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/Intercept.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/UserComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/UserMasterCompute.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/ComputationComputeTestGenerator.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/FormatHelper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/MasterComputeTestGenerator.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/PrefixedClasspathResourceLoader.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/TestGenerator.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/TestGraphGenerator.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/VelocityBasedGenerator.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/AggregatedValueWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/AggregatorWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/AsyncHDFSWriteService.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/BaseScenarioAndIntegrityWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/BaseWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/CommonVertexMasterContextWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/DebuggerUtils.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/ExceptionWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/GiraphMasterScenarioWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/GiraphVertexScenarioWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/MsgIntegrityViolationWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/package-info.java PRE-CREATION
giraph-debugger/src/main/protobuf/giraph_aggregator.proto PRE-CREATION
giraph-debugger/src/main/protobuf/integrity.proto PRE-CREATION
giraph-debugger/src/main/protobuf/scenario.proto PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/css/app.css PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/css/slider/slider.css PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/css/valpanel.css PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/img/details_close.png PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/img/details_open.png PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/img/preloader.gif PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/index.html PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/debugger.js PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/editor.core.js PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/editor.utils.js PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/slider/bootstrap-slider.js PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/utils.js PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/utils.sampleGraphs.js PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/valpanel.js PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ComputeSetUpFuncTemplate.vm PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ComputeTestFuncTemplate.vm PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ComputeTestTemplate.vm PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/MasterComputeTestTemplate.vm PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ReadWritableFromByteArrayTemplate.vm PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ReadWritableFromStringTemplate.vm PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/TestGraphTemplate.vm PRE-CREATION
giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/BaseComputation.java PRE-CREATION
giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/CommonDebugConfig.java PRE-CREATION
giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/DerivedComputation.java PRE-CREATION
giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/package-info.java PRE-CREATION
Diff: https://reviews.apache.org/r/25971/diff/
Testing
-------
Manually followed the steps for debugging shown in the [giraph-debugger/README.md](https://github.com/semihsalihoglu/graft#launching-giraph-jobs-with-graft), and confirmed generated test codes for Computation.compute() and MasterCompute with GUI and CLI reproduces the context.
For launching a buggy example (included under giraph-debugger), used the following command:
```
../giraph-debugger/giraph-debug ../giraph-debugger/target/giraph-debugger-1.1.0-SNAPSHOT-for-hadoop-1.2.1-jar-with-dependencies.jar org.apache.giraph.GiraphRunner org.apache.giraph.debugger.examples.simpledebug.BuggySimpleShortestPathsComputation -mc org.apache.giraph.debugger.examples.simpledebug.SimpleShortestPathsMaster -vif org.apache.giraph.io.formats.JsonLongDoubleFloatDoubleVertexInputFormat -vip shortestPathsInputGraph -vof org.apache.giraph.io.formats.IdWithValueTextOutputFormat -op shortestPathsOutputGraph.$RANDOM -w 1 -ca giraph.SplitMasterWorker=false #
```
Thanks,
Jaeho Shin
Re: Review Request 25971: Adds Giraph Debugger (Graft) to Giraph trunk
Posted by Jaeho Shin <Ja...@Gmail.com>.
> On 11월 13, 2014, 10:51 오후, Sergey Edunov wrote:
> > giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/InstrumentGiraphClasses.java, line 301
> > <https://reviews.apache.org/r/25971/diff/2/?file=749843#file749843line301>
> >
> > This is never true, did you mean targetTopClass.getClass().equals(Object.class) ?
Thanks for pointing out. It turns out I didn't change it accordingly with the preceding loop's condition.
> On 11월 13, 2014, 10:51 오후, Sergey Edunov wrote:
> > giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/AbstractInterceptingComputation.java, line 546
> > <https://reviews.apache.org/r/25971/diff/2/?file=749838#file749838line546>
> >
> > VertexContextWrapper is already created in GiraphVertexScenarioWrapper, you don't need to create and set it again here
Done.
> On 11월 13, 2014, 10:51 오후, Sergey Edunov wrote:
> > giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerUtils.java, line 602
> > <https://reviews.apache.org/r/25971/diff/2/?file=749836#file749836line602>
> >
> > I see this pattern used everywhere in this file, not sure why can't you just do
> > fileStatus.getPath().getName()
Done.
> On 11월 13, 2014, 10:51 오후, Sergey Edunov wrote:
> > giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerUtils.java, line 597
> > <https://reviews.apache.org/r/25971/diff/2/?file=749836#file749836line597>
> >
> > Same thing, you don't need to call format
Done.
> On 11월 13, 2014, 10:51 오후, Sergey Edunov wrote:
> > giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerUtils.java, line 571
> > <https://reviews.apache.org/r/25971/diff/2/?file=749836#file749836line571>
> >
> > No need to call format here, it's just a string
Done.
- Jaeho
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/25971/#review61283
-----------------------------------------------------------
On 11월 14, 2014, 1:29 오전, Jaeho Shin wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/25971/
> -----------------------------------------------------------
>
> (Updated 11월 14, 2014, 1:29 오전)
>
>
> Review request for giraph and Sergey Edunov.
>
>
> Bugs: GIRAPH-905
> https://issues.apache.org/jira/browse/GIRAPH-905
>
>
> Repository: giraph-git
>
>
> Description
> -------
>
> A rather large patch to include Giraph Debugger (Graft) in Giraph trunk. Based on [222e5e of semihsalihoglu/graft](https://github.com/semihsalihoglu/graft/commit/222e5e7c86c3c4122c1b88336b17966d4e7728d0).
>
>
> Diffs
> -----
>
> giraph-core/src/main/java/org/apache/giraph/master/MasterCompute.java 68eb416
> giraph-core/src/main/java/org/apache/giraph/worker/WorkerAggregatorDelegator.java 916e7a0
> giraph-debugger/.gitignore PRE-CREATION
> giraph-debugger/README.md PRE-CREATION
> giraph-debugger/giraph-debug PRE-CREATION
> giraph-debugger/gui PRE-CREATION
> giraph-debugger/pom.xml PRE-CREATION
> giraph-debugger/src/main/assembly/compile.xml PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/CommandLine.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/DebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/BipartiteGraphInputFormat.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/BipartiteGraphOutputFormat.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/TextAdjacencyListInputFormat.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/TextAdjacencyListLongIDDoubleEdgeWeightInputFormat.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/Message.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/RandomizedMaximalMatchingComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/RandomizedMaximalMatchingComputation2FixedLeft.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/RandomizedMaximalMatchingComputation3FixedRight.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/VertexValue.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/bipartitegraph-1.json PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/exceptiondebug/BuggySimpleTriangleClosingComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/exceptiondebug/SimpleTriangleClosingDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/exceptiondebug/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringMaster.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringMessageConstraintDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringVertexValueConstraintDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/Message.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/VertexValue.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggyConnectedComponentsDebugComputationModified.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggySimpleShortestPathsDebugComputationModified.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggySimpleTriangleClosingDebugComputationModified.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/BuggyConnectedComponentsComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/CCFindingMissingReverseEdgeMsgIntegrityDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/ConnectedComponentsDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/ConnectedComponentsMsgIntegrityDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/ConnectedComponentsRandomVerticesDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/ConnectedComponentsVValueIntegrityDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/MWMComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/MWMDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/MWMMessageConstraintDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/MWMVertexValueConstraintDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/VertexValue.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/pagerank/SimplePageRankComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/pagerank/SimplePageRankMasterCompute.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/pagerank/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/RandomWalkComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/RandomWalkDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/RandomWalkMessageConstraintDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/RandomWalkVertexValueConstraintDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/BuggySimpleShortestPathsComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/SimpleShortestPathsDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/SimpleShortestPathsMaster.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/Server.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerHttpHandler.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerUtils.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/AbstractInterceptingComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/AbstractInterceptingMasterCompute.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/BottomInterceptingComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/BottomInterceptingMasterCompute.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/CommonVertexMasterInterceptionUtil.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/InstrumentGiraphClasses.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/Intercept.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/UserComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/UserMasterCompute.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/ComputationComputeTestGenerator.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/FormatHelper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/MasterComputeTestGenerator.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/PrefixedClasspathResourceLoader.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/TestGenerator.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/TestGraphGenerator.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/VelocityBasedGenerator.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/AggregatedValueWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/AggregatorWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/AsyncHDFSWriteService.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/BaseScenarioAndIntegrityWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/BaseWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/CommonVertexMasterContextWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/DebuggerUtils.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/ExceptionWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/GiraphMasterScenarioWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/GiraphVertexScenarioWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/MsgIntegrityViolationWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/package-info.java PRE-CREATION
> giraph-debugger/src/main/protobuf/giraph_aggregator.proto PRE-CREATION
> giraph-debugger/src/main/protobuf/integrity.proto PRE-CREATION
> giraph-debugger/src/main/protobuf/scenario.proto PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/css/app.css PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/css/slider/slider.css PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/css/valpanel.css PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/img/details_close.png PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/img/details_open.png PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/img/preloader.gif PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/index.html PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/debugger.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/editor.core.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/editor.utils.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/slider/bootstrap-slider.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/utils.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/utils.sampleGraphs.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/valpanel.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ComputeSetUpFuncTemplate.vm PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ComputeTestFuncTemplate.vm PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ComputeTestTemplate.vm PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/MasterComputeTestTemplate.vm PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ReadWritableFromByteArrayTemplate.vm PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ReadWritableFromStringTemplate.vm PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/TestGraphTemplate.vm PRE-CREATION
> giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/BaseComputation.java PRE-CREATION
> giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/CommonDebugConfig.java PRE-CREATION
> giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/DerivedComputation.java PRE-CREATION
> giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/package-info.java PRE-CREATION
>
> Diff: https://reviews.apache.org/r/25971/diff/
>
>
> Testing
> -------
>
> Manually followed the steps for debugging shown in the [giraph-debugger/README.md](https://github.com/semihsalihoglu/graft#launching-giraph-jobs-with-graft), and confirmed generated test codes for Computation.compute() and MasterCompute with GUI and CLI reproduces the context.
>
> For launching a buggy example (included under giraph-debugger), used the following command:
> ```
> ../giraph-debugger/giraph-debug ../giraph-debugger/target/giraph-debugger-1.1.0-SNAPSHOT-for-hadoop-1.2.1-jar-with-dependencies.jar org.apache.giraph.GiraphRunner org.apache.giraph.debugger.examples.simpledebug.BuggySimpleShortestPathsComputation -mc org.apache.giraph.debugger.examples.simpledebug.SimpleShortestPathsMaster -vif org.apache.giraph.io.formats.JsonLongDoubleFloatDoubleVertexInputFormat -vip shortestPathsInputGraph -vof org.apache.giraph.io.formats.IdWithValueTextOutputFormat -op shortestPathsOutputGraph.$RANDOM -w 1 -ca giraph.SplitMasterWorker=false #
> ```
>
>
> Thanks,
>
> Jaeho Shin
>
>
Re: Review Request 25971: Adds Giraph Debugger (Graft) to Giraph trunk
Posted by Sergey Edunov <ed...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/25971/#review61283
-----------------------------------------------------------
giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerUtils.java
<https://reviews.apache.org/r/25971/#comment102822>
No need to call format here, it's just a string
giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerUtils.java
<https://reviews.apache.org/r/25971/#comment102823>
Same thing, you don't need to call format
giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerUtils.java
<https://reviews.apache.org/r/25971/#comment102824>
I see this pattern used everywhere in this file, not sure why can't you just do
fileStatus.getPath().getName()
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/AbstractInterceptingComputation.java
<https://reviews.apache.org/r/25971/#comment102826>
VertexContextWrapper is already created in GiraphVertexScenarioWrapper, you don't need to create and set it again here
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/InstrumentGiraphClasses.java
<https://reviews.apache.org/r/25971/#comment102878>
This is never true, did you mean targetTopClass.getClass().equals(Object.class) ?
- Sergey Edunov
On Nov. 5, 2014, 12:52 a.m., Jaeho Shin wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/25971/
> -----------------------------------------------------------
>
> (Updated Nov. 5, 2014, 12:52 a.m.)
>
>
> Review request for giraph and Sergey Edunov.
>
>
> Bugs: GIRAPH-905
> https://issues.apache.org/jira/browse/GIRAPH-905
>
>
> Repository: giraph-git
>
>
> Description
> -------
>
> A rather large patch to include Giraph Debugger (Graft) in Giraph trunk. Based on [222e5e of semihsalihoglu/graft](https://github.com/semihsalihoglu/graft/commit/222e5e7c86c3c4122c1b88336b17966d4e7728d0).
>
>
> Diffs
> -----
>
> giraph-core/src/main/java/org/apache/giraph/master/MasterCompute.java 68eb416
> giraph-core/src/main/java/org/apache/giraph/worker/WorkerAggregatorDelegator.java 916e7a0
> giraph-debugger/.gitignore PRE-CREATION
> giraph-debugger/README.md PRE-CREATION
> giraph-debugger/giraph-debug PRE-CREATION
> giraph-debugger/gui PRE-CREATION
> giraph-debugger/pom.xml PRE-CREATION
> giraph-debugger/src/main/assembly/compile.xml PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/CommandLine.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/DebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/BipartiteGraphInputFormat.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/BipartiteGraphOutputFormat.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/TextAdjacencyListInputFormat.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/TextAdjacencyListLongIDDoubleEdgeWeightInputFormat.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/Message.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/RandomizedMaximalMatchingComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/RandomizedMaximalMatchingComputation2FixedLeft.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/RandomizedMaximalMatchingComputation3FixedRight.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/VertexValue.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/bipartitegraph-1.json PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/exceptiondebug/BuggySimpleTriangleClosingComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/exceptiondebug/SimpleTriangleClosingDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/exceptiondebug/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringMaster.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringMessageConstraintDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringVertexValueConstraintDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/Message.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/VertexValue.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggyConnectedComponentsDebugComputationModified.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggySimpleShortestPathsDebugComputationModified.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggySimpleTriangleClosingDebugComputationModified.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/BuggyConnectedComponentsComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/CCFindingMissingReverseEdgeMsgIntegrityDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/ConnectedComponentsDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/ConnectedComponentsMsgIntegrityDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/ConnectedComponentsRandomVerticesDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/ConnectedComponentsVValueIntegrityDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/MWMComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/MWMDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/MWMMessageConstraintDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/MWMVertexValueConstraintDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/VertexValue.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/pagerank/SimplePageRankComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/pagerank/SimplePageRankMasterCompute.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/pagerank/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/RandomWalkComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/RandomWalkDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/RandomWalkMessageConstraintDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/RandomWalkVertexValueConstraintDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/BuggySimpleShortestPathsComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/SimpleShortestPathsDebugConfig.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/SimpleShortestPathsMaster.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/Server.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerHttpHandler.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerUtils.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/AbstractInterceptingComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/AbstractInterceptingMasterCompute.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/BottomInterceptingComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/BottomInterceptingMasterCompute.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/CommonVertexMasterInterceptionUtil.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/InstrumentGiraphClasses.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/Intercept.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/UserComputation.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/UserMasterCompute.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/ComputationComputeTestGenerator.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/FormatHelper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/MasterComputeTestGenerator.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/PrefixedClasspathResourceLoader.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/TestGenerator.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/TestGraphGenerator.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/VelocityBasedGenerator.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/package-info.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/AggregatedValueWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/AggregatorWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/AsyncHDFSWriteService.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/BaseScenarioAndIntegrityWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/BaseWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/CommonVertexMasterContextWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/DebuggerUtils.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/ExceptionWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/GiraphMasterScenarioWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/GiraphVertexScenarioWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/MsgIntegrityViolationWrapper.java PRE-CREATION
> giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/package-info.java PRE-CREATION
> giraph-debugger/src/main/protobuf/giraph_aggregator.proto PRE-CREATION
> giraph-debugger/src/main/protobuf/integrity.proto PRE-CREATION
> giraph-debugger/src/main/protobuf/scenario.proto PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/css/app.css PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/css/slider/slider.css PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/css/valpanel.css PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/img/details_close.png PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/img/details_open.png PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/img/preloader.gif PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/index.html PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/debugger.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/editor.core.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/editor.utils.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/slider/bootstrap-slider.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/utils.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/utils.sampleGraphs.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/valpanel.js PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ComputeSetUpFuncTemplate.vm PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ComputeTestFuncTemplate.vm PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ComputeTestTemplate.vm PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/MasterComputeTestTemplate.vm PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ReadWritableFromByteArrayTemplate.vm PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ReadWritableFromStringTemplate.vm PRE-CREATION
> giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/TestGraphTemplate.vm PRE-CREATION
> giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/BaseComputation.java PRE-CREATION
> giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/CommonDebugConfig.java PRE-CREATION
> giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/DerivedComputation.java PRE-CREATION
> giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/package-info.java PRE-CREATION
>
> Diff: https://reviews.apache.org/r/25971/diff/
>
>
> Testing
> -------
>
> Manually followed the steps for debugging shown in the [giraph-debugger/README.md](https://github.com/semihsalihoglu/graft#launching-giraph-jobs-with-graft), and confirmed generated test codes for Computation.compute() and MasterCompute with GUI and CLI reproduces the context.
>
> For launching a buggy example (included under giraph-debugger), used the following command:
> ```
> ../giraph-debugger/giraph-debug ../giraph-debugger/target/giraph-debugger-1.1.0-SNAPSHOT-for-hadoop-1.2.1-jar-with-dependencies.jar org.apache.giraph.GiraphRunner org.apache.giraph.debugger.examples.simpledebug.BuggySimpleShortestPathsComputation -mc org.apache.giraph.debugger.examples.simpledebug.SimpleShortestPathsMaster -vif org.apache.giraph.io.formats.JsonLongDoubleFloatDoubleVertexInputFormat -vip shortestPathsInputGraph -vof org.apache.giraph.io.formats.IdWithValueTextOutputFormat -op shortestPathsOutputGraph.$RANDOM -w 1 -ca giraph.SplitMasterWorker=false #
> ```
>
>
> Thanks,
>
> Jaeho Shin
>
>
Re: Review Request 25971: Adds Giraph Debugger (Graft) to Giraph trunk
Posted by Jaeho Shin <Ja...@Gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/25971/
-----------------------------------------------------------
(Updated 11월 5, 2014, 12:52 오전)
Review request for giraph and Sergey Edunov.
Changes
-------
This patch resolves @edunov's review comments, improves performance of the instrumented code a lot, and adds a few more (buggy) examples. It is based on [59eb6af of semihsalihoglu/graft](https://github.com/semihsalihoglu/graft/commit/59eb6afafefa52b16d376cf47065d44b4a2b69a1).
Bugs: GIRAPH-905
https://issues.apache.org/jira/browse/GIRAPH-905
Repository: giraph-git
Description
-------
A rather large patch to include Giraph Debugger (Graft) in Giraph trunk. Based on [222e5e of semihsalihoglu/graft](https://github.com/semihsalihoglu/graft/commit/222e5e7c86c3c4122c1b88336b17966d4e7728d0).
Diffs (updated)
-----
giraph-core/src/main/java/org/apache/giraph/master/MasterCompute.java 68eb416
giraph-core/src/main/java/org/apache/giraph/worker/WorkerAggregatorDelegator.java 916e7a0
giraph-debugger/.gitignore PRE-CREATION
giraph-debugger/README.md PRE-CREATION
giraph-debugger/giraph-debug PRE-CREATION
giraph-debugger/gui PRE-CREATION
giraph-debugger/pom.xml PRE-CREATION
giraph-debugger/src/main/assembly/compile.xml PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/CommandLine.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/DebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/BipartiteGraphInputFormat.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/BipartiteGraphOutputFormat.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/TextAdjacencyListInputFormat.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/TextAdjacencyListLongIDDoubleEdgeWeightInputFormat.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/Message.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/RandomizedMaximalMatchingComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/RandomizedMaximalMatchingComputation2FixedLeft.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/RandomizedMaximalMatchingComputation3FixedRight.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/VertexValue.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/bipartitegraph-1.json PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/bipartitematching/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/exceptiondebug/BuggySimpleTriangleClosingComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/exceptiondebug/SimpleTriangleClosingDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/exceptiondebug/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringMaster.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringMessageConstraintDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/GraphColoringVertexValueConstraintDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/Message.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/VertexValue.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/graphcoloring/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggyConnectedComponentsDebugComputationModified.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggySimpleShortestPathsDebugComputationModified.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/BuggySimpleTriangleClosingDebugComputationModified.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/instrumented/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/BuggyConnectedComponentsComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/CCFindingMissingReverseEdgeMsgIntegrityDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/ConnectedComponentsDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/ConnectedComponentsMsgIntegrityDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/ConnectedComponentsRandomVerticesDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/ConnectedComponentsVValueIntegrityDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/integrity/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/MWMComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/MWMDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/MWMMessageConstraintDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/MWMVertexValueConstraintDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/VertexValue.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/mwm/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/pagerank/SimplePageRankComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/pagerank/SimplePageRankMasterCompute.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/pagerank/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/RandomWalkComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/RandomWalkDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/RandomWalkMessageConstraintDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/RandomWalkVertexValueConstraintDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/randomwalk/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/BuggySimpleShortestPathsComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/SimpleShortestPathsDebugConfig.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/SimpleShortestPathsMaster.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/examples/simpledebug/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/Server.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerHttpHandler.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/ServerUtils.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/gui/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/AbstractInterceptingComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/AbstractInterceptingMasterCompute.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/BottomInterceptingComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/BottomInterceptingMasterCompute.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/CommonVertexMasterInterceptionUtil.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/InstrumentGiraphClasses.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/Intercept.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/UserComputation.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/UserMasterCompute.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/instrumenter/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/ComputationComputeTestGenerator.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/FormatHelper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/MasterComputeTestGenerator.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/PrefixedClasspathResourceLoader.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/TestGenerator.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/TestGraphGenerator.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/VelocityBasedGenerator.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/mock/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/package-info.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/AggregatedValueWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/AggregatorWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/AsyncHDFSWriteService.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/BaseScenarioAndIntegrityWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/BaseWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/CommonVertexMasterContextWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/DebuggerUtils.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/ExceptionWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/GiraphMasterScenarioWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/GiraphVertexScenarioWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/MsgIntegrityViolationWrapper.java PRE-CREATION
giraph-debugger/src/main/java/org/apache/giraph/debugger/utils/package-info.java PRE-CREATION
giraph-debugger/src/main/protobuf/giraph_aggregator.proto PRE-CREATION
giraph-debugger/src/main/protobuf/integrity.proto PRE-CREATION
giraph-debugger/src/main/protobuf/scenario.proto PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/css/app.css PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/css/slider/slider.css PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/css/valpanel.css PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/img/details_close.png PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/img/details_open.png PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/img/preloader.gif PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/index.html PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/debugger.js PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/editor.core.js PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/editor.utils.js PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/slider/bootstrap-slider.js PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/utils.js PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/utils.sampleGraphs.js PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/gui/js/valpanel.js PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ComputeSetUpFuncTemplate.vm PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ComputeTestFuncTemplate.vm PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ComputeTestTemplate.vm PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/MasterComputeTestTemplate.vm PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ReadWritableFromByteArrayTemplate.vm PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/ReadWritableFromStringTemplate.vm PRE-CREATION
giraph-debugger/src/main/resources/org/apache/giraph/debugger/mock/TestGraphTemplate.vm PRE-CREATION
giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/BaseComputation.java PRE-CREATION
giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/CommonDebugConfig.java PRE-CREATION
giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/DerivedComputation.java PRE-CREATION
giraph-debugger/src/test/java/org/apache/giraph/debugger/instrumenter/test/basecompute/package-info.java PRE-CREATION
Diff: https://reviews.apache.org/r/25971/diff/
Testing
-------
Manually followed the steps for debugging shown in the [giraph-debugger/README.md](https://github.com/semihsalihoglu/graft#launching-giraph-jobs-with-graft), and confirmed generated test codes for Computation.compute() and MasterCompute with GUI and CLI reproduces the context.
For launching a buggy example (included under giraph-debugger), used the following command:
```
../giraph-debugger/giraph-debug ../giraph-debugger/target/giraph-debugger-1.1.0-SNAPSHOT-for-hadoop-1.2.1-jar-with-dependencies.jar org.apache.giraph.GiraphRunner org.apache.giraph.debugger.examples.simpledebug.BuggySimpleShortestPathsComputation -mc org.apache.giraph.debugger.examples.simpledebug.SimpleShortestPathsMaster -vif org.apache.giraph.io.formats.JsonLongDoubleFloatDoubleVertexInputFormat -vip shortestPathsInputGraph -vof org.apache.giraph.io.formats.IdWithValueTextOutputFormat -op shortestPathsOutputGraph.$RANDOM -w 1 -ca giraph.SplitMasterWorker=false #
```
Thanks,
Jaeho Shin