Graft: A Debugging Tool For Apache Giraph

Graft: A Debugging Tool For Apache Giraph
复制标题

Graft:Apache Giraph 的调试工具

DOI:
--
复制
发表时间:
2015
期刊:
SIGMOD Conference
影响因子:
--
通讯作者:
J. Widom
J. Widom
中科院分区:
--
文献类型:
--
作者:
S. Salihoglu;Jaeho Shin;V. Khanna;Ba Quan Truong;J. Widom

文献摘要

被引文献

相似文献

我们解决了调试为类Pregel系统编写的程序的问题。在采访了Gigraph和GPS的用户后,我们开发了Graft。GRAGE支持用户通常经历的调试周期:(1)用户以编程方式描述他们有兴趣检查的顶点集。在执行过程中,Graft会跨超步骤捕获这些顶点的上下文信息。(2)使用Graft的图形用户界面,用户可以可视化捕获的顶点的值和消息如何从一个SuperStep到另一个SuperStep的变化,缩小可疑顶点和SuperSteps的范围。(3)用户通过将Graft生成的代码复制到其开发环境的逐行调试器中,重新执行针对可疑顶点和SuperStep执行的代码vertex()函数的准确行。Grave还具有为Gigraph程序构建端到端测试的功能。GRAGET是开源的,完全集成到了ApacheGigraph的主代码库中。
We address the problem of debugging programs written for Pregel-like systems. After interviewing Giraph and GPS users, we developed Graft. Graft supports the debugging cycle that users typically go through: (1) Users describe programmatically the set of vertices they are interested in inspecting. During execution, Graft captures the context information of these vertices across supersteps. (2) Using Graft's GUI, users visualize how the values and messages of the captured vertices change from superstep to superstep,narrowing in suspicious vertices and supersteps. (3) Users replay the exact lines of the code vertex.compute() function that executed for the suspicious vertices and supersteps, by copying code that Graft generates into their development environments' line-by-line debuggers. Graft also has features to construct end-to-end tests for Giraph programs. Graft is open-source and fully integrated into Apache Giraph's main code base.