MapR 4.0.1 のクラスターでは、革命 R mapreduce ジョブのエラーで失敗します。
2015-02-13 08時 00分: 37 からは、657 の致命的なエラー [IPC サーバー 2 にハンドラー 52243] org.apache.hadoop.mapred.TaskAttemptListenerImpl: タスク: attempt_1423734868663_0289_m_000000_0 - 終了: java.io.IOException: R の VM は、終了コードで終了しました: 1 の場合、出力。
開始スクリプト
[1] は TRUE。
$fileName
[NA 1]
$start
[1] 0
$length
[1] 0
/usr/lib64/Revo-7.3/R-3.1.1/lib64/R/library/RevoScaleR/rxLibs/x64/libExaCore.so.2(_Z21CriticalSignalHandleri+0x1e)[0x7fe02d3d423e]
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.71.x86_64/jre/lib/amd64/server/libjvm.so(+0x7e2628)[0x7fe0282f8628]
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.71.x86_64/jre/lib/amd64/server/libjvm.so(JVM_handle_linux_signal+0x95)[0x7fe0282fea55]
/lib64/libpthread.so.0[0x30cec0f710]
/usr/lib64/Revo-7.3/R-3.1.1/lib64/R/library/RevoScaleR/rxLibs/x64/libExaCore.so.2(_ZNK10CxAnalysis19HaveWriteDataSourceEv+0x0)[0x7fe02acbc280]
/usr/lib64/Revo-7.3/R-3.1.1/lib64/R/library/RevoScaleR/rxLibs/x64/libExaCore.so.2(_ZN10CxAnalysis18GetWriteDataSourceEv+0x9)[0x7fe02acbcb49]
/usr/lib64/Revo-7.3/R-3.1.1/lib64/R/library/RevoScaleR/rxLibs/x64/libRxLink.so.2(_Z19RxComputeHadoopTaskR11RListObjectR11RxAllocator+0x3b3)[0x7fe02e2a5d23]
/usr/lib64/Revo-7.3/R-3.1.1/lib64/R/library/RevoScaleR/rxLibs/x64/libRxLink.so.2(_Z10RxUtilBaseP7SEXPREC+0x6db)[0x7fe02e2b2fab]
/usr/lib64/Revo-7.3/R-3.1.1/lib64/R/library/RevoScaleR/rxLibs/x64/libRxLink.so.2(RxUtil+0x34)[0x7fe02e2b3f14]
/usr/lib64/Revo-7.3/R-3.1.1/lib64/R/lib/libR.so(+0x9f36b)[0x7fe04083536b]
/usr/lib64/Revo-7.3/R-3.1.1/lib64/R/lib/libR.so(Rf_eval+0x871)[0x7fe04086be91]
/usr/lib64/Revo-7.3/R-3.1.1/lib64/R/lib/libR.so(Rf_ReplIteration+0x212)[0x7fe0408946a2]
/usr/lib64/Revo-7.3/R-3.1.1/lib64/R/lib/libR.so(+0xfea59)[0x7fe040894a59]
/usr/lib64/Revo-7.3/R-3.1.1/lib64/R/lib/libR.so(run_Rmainloop+0x44)[0x7fe040894f64]
/usr/lib64/Revo-7.3/R-3.1.1/lib64/R/bin/exec/R(main+0x1b)[0x40084b]
/lib64/libc.so.6(__libc_start_main+0xfd)[0x30ce41ed5d]
/usr/lib64/Revo-7.3/R-3.1.1/lib64/R/bin/exec/R[0x400739]
セグメンテーション ・ フォルト。
com.revolutionanalytics.scaleR.hadoop.Rscript.waitFor(Rscript.java:103) で
com.revolutionanalytics.scaleR.hadoop.Rscript.run(Rscript.java:59) で
com.revolutionanalytics.scaleR.hadoop.RDelegatingMapper.run(RDelegatingMapper.java:73) で
org.apache.hadoop.mapred.MapTask.runNewMapper (MapTask.java:773) で
org.apache.hadoop.mapred.MapTask.run (MapTask.java:345) で
org.apache.hadoop.mapred.YarnChild$2.run (YarnChild.java:167) で
java.security.AccessController.doPrivileged (ネイティブ メソッド) で
javax.security.auth.Subject.doAs(Subject.java:415) で
org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1469) で
org.apache.hadoop.mapred.YarnChild.main (YarnChild.java:162) で
MapR 4.0.1 プラットフォームでは、革命 R エンタープライズ環境の構成が正しくありません libhdfs.so ライブラリを使用するためです。
問題を回避するには、革命 R 7.3 の MapR 4.0.1 クラスターで作成された次のインストール後の構成手順を確認します。
「クライアント」のノードで、各ユーザーのネイティブのファイルシステムの共有ディレクトリを作成します。
1. sudo mkdir-p/var/RevoShare/mapr
3. chmod 777/var/RevoShare/mapr
4. を追加します。/home/mapr/.bash_profile に/usr/lib64/Revo-7.3/scripts/RevoHadoopEnvVars.site
作業者のすべてのノードでは、次の変更を行います。
# cp scaleR-hadoop-0.1-SNAPSHOT.jar /opt/mapr/hadoop/hadoop-2.4.1/share/hadoop/common/lib/ # ln -s /opt/mapr/hadoop/hadoop-0.20.2/c++/Linux-amd64-64/lib/libhdfs.so /usr/lib64
# mv /opt/mapr/hadoop/hadoop-2.4.1/lib/native/libhdfs.so /opt/mapr/hadoop/hadoop-2.4.1/lib/native/libhdfs.so.save
革命 R のインストールは、$HADOOP_HOME/lib にスケーラー hadoop 0.1 SNAPSHOT.jar へのリンクを自動的に作成します。ただし、これは、正しくない (バグが報告されています)、ファイルをリンクまたは/opt/mapr/hadoop/hadoop-2.4.1/share/hadoop/common/lib/ にコピーする必要があります。
革命 R. によって適切な libhdfs.so が検出されたことにより、/usr/lib64 に/opt/mapr/hadoop/hadoop-0.20.2/c++/Linux-amd64-64/lib/libhdfs.so のリンク3 番目の手順は、問題の libhdfs.so の場所に移動する必要があります。