Я опробовал упрощенный пример подсчета слов для конвейерных линий .К сожалению, он выдает ошибки java.lang.NullPointerException
и /usr/lib64/libstdc++.so.6: no version information available
, когда я пытаюсь запустить его как:
$ bin/hadoop pipes -Dhadoop.pipes.java.recordreader=true \
-Dhadoop.pipes.java.recordwriter=true \
-input <inputHDFSPath> \
-output <outputHDFSPath> \
-program <cppBinaryHDFSPath>
Сведения об ошибке здесь .
Любыепредложения о том, как это исправить, будет принята с благодарностью.Спасибо.
Edit1: добавлена команда, используемая для запуска.
Edit2: Оказывается, что двоичный файл C ++ не был статически связан.После исправления, которое я теперь вижу эта ошибка .
Edit3: добавлена используемая версия hadoop.Я также добавил соответствующие части журналов отслеживания вакансий здесь .Кроме того, stderr
для каждой неудачной попытки имеет это:
$more /usr/local/dp/hadoop/userlogs/job_201107211831_0013/\
attempt_201107211831_0013_m_000000_0/stderr
Hadoop Pipes Exception: Aborted by driver