Java Runtime Environmentを継続するためのメモリが不足しています。
Centos 6.4 X64、JDK 1.7 U21 環境で mahout 0.9 with hadoop 1.2.1 を実行し、5GB のデータを処理すると、システムから There is insufficient memory for Java Runtime Environment to continue と表示されました。
14/07/15 08:46:05 INFO mapred.JobClient: タスクID : attempt_201407141818_0002_m_000018_0, ステータス : FAILED
java.lang.Throwable: 子エラー
at org.apache.hadoop.mapred.TaskRunner.run(TaskRunner.java:271)
原因:java.io.IOException。タスクプロセス終了時にステータス 1 が 0 以外で終了しました。
at org.apache.hadoop.mapred.TaskRunner.run(TaskRunner.java:258)
attempt_201407141818_0002_m_000018_0: #
attempt_201407141818_0002_m_000018_0: #
Java実行環境のメモリが不足しているため、続行できません。
attempt_201407141818_0002_m_000018_0: # GCスレッドを作成することができません。
attempt_201407141818_0002_m_000018_0: # 詳細な情報を含むエラー報告ファイルが保存されています。
attempt_201407141818_0002_m_000018_0: # /home/hadoop/hd_space/mapred/local/taskTracker/hadoop/jobcache/job_201407141818_0002/attempt _201407141818_0002_m_000018_0/work/hs_err_pid25377.log
14/07/15 08:46:07 INFO mapred.JobClient: マップ 15% リデュース 0%。
14/07/15 08:46:09 INFO mapred.JobClient: マップ 16% リデュース 0%。
14/07/15 08:46:09 INFO mapred.JobClient: タスクID : attempt_201407141818_0002_m_000018_1, ステータス : FAILED
java.lang.Throwable: 子エラー
at org.apache.hadoop.mapred.TaskRunner.run(TaskRunner.java:271)
原因:java.io.IOException。タスクプロセス終了時にステータス 1 が 0 以外で終了しました。
at org.apache.hadoop.mapred.TaskRunner.run(TaskRunner.java:258)
attempt_201407141818_0002_m_000018_1: #
attempt_201407141818_0002_m_000018_1: # Java Runtime Environment を続行するには、メモリが不足しています。
attempt_201407141818_0002_m_000018_1: # システムリソースが不足しているため、GCスレッドを作成できません。
attempt_201407141818_0002_m_000018_1: # 詳細な情報を含むエラーレポートファイルが保存されます。
システム制限の表示
[root@NameNode ~]# ulimit -a
コアファイルのサイズ(ブロック数、-c)無制限
データセグサイズ (kbytes, -d) 無制限
スケジューリング優先度 (-e) 0
ファイルサイズ(ブロック数、-f)無制限
保留信号 (-i) 2066288
最大ロックメモリ (kbytes, -l) 64
最大メモリサイズ (kbytes, -m) 無制限
<スパン
オープンファイル
(-n)
<スパン
1024
パイプサイズ (512 バイト, -p) 8
ファイル数が少なすぎます。表示 システムの /etc/security/limit.conf, etc/sysctl.conf, JDKのバージョン変更など、すべて無駄だった! Rootでulimit -c unlimitedを設定した後、まだ動作しない。
[hadoop@NameNode mahout-distribution-0.9]$ ulimit -a
最大ユーザープロセス数 (-u)
<スパン
1024
仮想メモリ(kbytes、-v) 無制限
ということを確認した上で
etc/security/ の下を見てください。centos6 では limits.d ディレクトリが追加され、その下に 90-nproc.config というファイルがあります。
このファイルの読み方
<スパン
# 防止すべきユーザーのプロセス数のデフォルトの制限値
# 偶発的なフォークボム
# 理由は rhbz #432903 を参照してください。
* ソフト nproc 1024
ルートソフト nproc 無制限
1024までなので、コメントアウトします。
<スパン 問題解決
関連
-
"collect2: error: ld returned 1 exit status" の解決法
-
Makefileを参照してください。***セパレータがない。 停止 原因と解決策
-
linux system: make: *** `install' をターゲットにするルールがありません。停止してください。
-
C言語改善
-
[turn] makeが表示される ターゲットが指定されておらず、makefileが見つからない 解決方法
-
ubuntuでグローバルシステムエージェントを設定する
-
Linux "std::bad_allocのインスタンスを投げた後に呼び出されたterminate what(): std::bad_alloc Aborted "
-
cp: 通常のファイル `/usr/local/bin/orange' を作成できません。テキストファイルがビジー状態
-
Linuxでよくあるパーミッション関連のエラーとその解決法
-
Ansibleの通常ユーザーsudoがコマンドを実行します。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Makefile:9: *** セパレータがありません。
-
ConnectionRefusedErrorです。[Errno 111] 接続が拒否されました。
-
Nvidia グラフィックスカード 初期化に失敗しました NVML Driver/library version mismatch エラー解決法
-
変数 `xxx' の解は、初期化子を持っているが型が不完全である。
-
Ubuntu next install nginx,make: *** `default'が必要とする `build' をターゲットとするルールがありません。停止します。
-
mach-mini2440.c:155: error: array type has incomplete element type
-
CentOS 7 エラー: curl#60 - "ピアの証明書は有効期限が切れています。"
-
セキュアネットワーク(sshポートマッピング) -----図の詳細を使用することができます。
-
Linuxでプログラム実行時にTextファイルがビジーになる問題の解決方法です。
-
nginx: [emerg] 0.0.0.0:80 への bind() に失敗しました (13: Permission denied)。