【发布时间】:2012-08-01 20:38:21
【问题描述】:
我在亚马逊 ec2 上运行一个 java 进程。它运行了 72 分钟,然后突然我得到“java 结果 137”。就是这样,没有异常或任何其他错误消息。我已经搜索过这个错误,但找不到任何有用的东西。它可能是什么原因以及如何解决它?请告诉我。
【问题讨论】:
-
你在运行什么进程?也许这只是处理终止的状态;这可能不是错误。
-
我相信“Java 结果”后面的数字是代码终止执行时传递给 System.exit(int) 的值。通常的约定是,除零以外的任何退出代码都表示错误,但没有错误消息可以帮助您调试情况是一种糟糕的形式。
-
@KevinMangold 我正在将记录插入集群上的 MongoDB。 4 台机器上有 4 个分片,这个 java 进程通过连接 MongoS(将文档路由到分片)插入文档。在我的代码中,我使用 System.exit() 但它在满足错误条件时显式返回 -1。感谢您也标记 amazon-ec2 :),我应该在发帖时这样做。
-
@KevinMangold 忘了提及,这肯定是突然终止,因为该过程尚未完成插入所有必需的记录。
-
在您获得“java 结果 137”时,MongoDB 实例(mongos 和 mongod's)的日志文件中是否有任何错误?如果是这样,请将这些日志摘录粘贴到pastie.org 或pastebin.com 中,并将链接放在这里,我们可以看看。
标签: java mongodb amazon-ec2 mongodb-java