我在远程机器上安装了voltdb。我想知道如何调试我编写的存储过程。具体而言,我希望在不同的时间点看到不同变量的值。是否有任何记录机制或在终端上显示内容(如在netizza中提出通知)。
答案 0 :(得分:1)
这个wiki页面Using Eclipse to Develop and Debug VoltDB Client Applications,关于Github中的voltdb项目,描述了如何在Eclipse中使用调试器进行设置。
如果您正在寻找一些简单的命令行故障排除方法,有一些选项,但我们不建议在存储过程中添加对log4j的调用。这是临时使用,之后应删除 :
在过程中使用System.out.println()调用,并从控制台运行VoltDB以查看输出。手动调用该过程。如果您对程序进行了大量调用,这将不会非常有用。
创建一个表并在过程中使用插入来记录过程中要跟踪的消息,变量值或任何内容。这可以处理大量调用,因为您可以在运行工作负载后查询表,甚至可以创建视图来聚合结果。我已经更多地使用这个来计算在各个点执行过程中经过的纳秒,在过程中达到某些逻辑点时计算实例,或者计算过程中返回的中间记录,通常仅用于非常复杂的过程。如果您的过程导致错误,那将无济于事,因为插入将被回滚,因此使用有限。