3

刚刚将我的应用程序移至新的 CentOS 服务器。折腾了半天,还是不能玩编译或者报错。shell 输出将显示最后一个文件编译然后挂起。我正在运行 Scala 0.9.1 模块。

我做了一个strace过程,这就是我得到的。不确定它是否有帮助。

futex(0x410489d0, FUTEX_WAIT, 5403, NULL

对原因有什么想法吗?或者我可以从哪里开始故障排除?

谢谢。

4

2 回答 2

2

谷歌搜索FUTEX_WAIT我发现这个OpenJDK 的邮件列表线程描述了你的问题。他们建议用户去特定发行版的论坛并提出相同的问题,这使我进入了这个专门针对 Fedora 10 的论坛帖子。这似乎是与某些 Linux 发行版、某些 JVM 和gvfs-fuse-daemon或其他一些保持锁定的进程。

不知道具体的解决方案,但我希望以下其中一项有所帮助:

  • 阅读这个处理相同问题的问题,仅与 Citrix 有关
  • 这个问题似乎已经存在了一段时间,因此请确保将 JVM 更新到最新版本
  • 如果可能的话,将您的发行版更新到最新版本(尤其是任何内核更新,根据这个 Sun 错误修复了该问题)
  • 联系 CentOS 社区,因为这个问题似乎futex与 Linux 有关;他们应该能够进一步帮助您

我没有立即找到解决此问题的明确解决方案,因此,如果您找到了解决方案,请更新此问题,以便我们将其保存以供后代使用;-)

于 2012-02-03T07:53:28.353 回答
1

事实证明 tmbrggmn 是正确的,这确实与我使用的机器上的特定内核有关。

特定的内核是一个运行 CentOS 并使用软件虚拟化的开源 Zen 内核。我迁移到 Citrix Kernel,现在开始播放!编译就好了。

uname -a错误内核上的A是:

Linux examplehost.com 2.6.18-274.17.1.el5xen #1 SMP Tue Jan 10 18:06:37 EST 2012 x86_64 x86_64 x86_64 GNU/Linux
于 2012-02-03T22:58:12.273 回答