1

関連するエラーメッセージと思われるものは次のとおりです。

Caused by: java.io.IOException: Cannot run program "/usr/bin/git" (in directory "/var/lib/hudson/jobs/Goals/workspace"): java.io.IOException: error=12, Cannot allocate memory
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:474)
    at hudson.Proc$LocalProc.<init>(Proc.java:192)
    at hudson.Proc$LocalProc.<init>(Proc.java:164)
    at hudson.Launcher$LocalLauncher.launch(Launcher.java:638)
    at hudson.Launcher$ProcStarter.start(Launcher.java:273)
    at hudson.Launcher$ProcStarter.join(Launcher.java:280)
    at hudson.plugins.git.GitAPI.launchCommandIn(GitAPI.java:319)
    ... 15 more
Caused by: java.io.IOException: java.io.IOException: error=12, Cannot allocate memory
    at java.lang.UNIXProcess.<init>(UNIXProcess.java:164)
    at java.lang.ProcessImpl.start(ProcessImpl.java:81)
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:467)
    ... 21 more

Hudson からの完全な出力は、http: //hudson.pastebin.com/KLSNrY1Dでも確認できます。

何か案は?どうすればこれを防ぐことができますか? 私は Java 開発者ではないので、ここで何が起こっているのかはよくわかりません。問題を解決するには Hudson を完全に再起動する必要がありますが、明らかにこれが最善の答えではありません。

4

3 に答える 3

3

ボックスのスワップ領域を使い果たしたようです。

java.lang.ProcessBuilder.start() は、最終的に、新しいプロセスを作成するために、Unix ライクな OS で fork または clone システム コールに要約する必要があります。それにはスワップスペースが必要です。そして、あなたは十分ではないようです。これは、Java ではなく、Unix システムの管理領域にあります。

于 2010-07-13T17:32:12.610 に答える
2

私のため:

echo 0 > /proc/sys/vm/overcommit_memory

問題を解決しました。

于 2011-07-07T12:02:58.897 に答える
1

一度にいくつの外部プログラムを実行しますか? ハドソンビルダーなどは何人ですか?これが起こったとき、「無料」は何と言いますか?

子を持つ hudson プロセスで使用できるメモリがシステムで不足していることに遭遇しただけかもしれません。

于 2010-07-13T17:02:52.513 に答える