Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / NoSQL, Big Data Новый топик    Ответить
 OOZIE error=2, No such file or directory  [new]
Pavel_PV
Member

Откуда:
Сообщений: 73
Всем привет.
Не могу победить в узя. Есть простой скрипт, хочу его выполнить в workflow, но постоянно упираюсь в ошибку:
2019-05-07 13:25:02,102 INFO org.apache.oozie.servlet.CallbackServlet: SERVER[mlnode01-et.ftc.ru] USER[-] GROUP[-] TOKEN[-] APP[-] JOB[0000327-190118110215326-oozie-oozi-W] ACTION[0000327-190118110215326-oozie-oozi-W@shell-bfb4] callback for action [0000327-190118110215326-oozie-oozi-W@shell-bfb4]
2019-05-07 13:25:02,267 INFO org.apache.oozie.action.hadoop.ShellActionExecutor: SERVER[mlnode01-et.ftc.ru] USER[guest] GROUP[-] TOKEN[] APP[My WorkflowT1] JOB[0000327-190118110215326-oozie-oozi-W] ACTION[0000327-190118110215326-oozie-oozi-W@shell-bfb4] action completed, external ID [job_1547784111273_1485]
2019-05-07 13:25:02,272 WARN org.apache.oozie.action.hadoop.ShellActionExecutor: SERVER[mlnode01-et.ftc.ru] USER[guest] GROUP[-] TOKEN[] APP[My WorkflowT1] JOB[0000327-190118110215326-oozie-oozi-W] ACTION[0000327-190118110215326-oozie-oozi-W@shell-bfb4] Launcher ERROR, reason: Main class [org.apache.oozie.action.hadoop.ShellMain], main() threw exception, Cannot run program "refresh003.sh" (in directory "/data/yarn/nm/usercache/guest/appcache/application_1547784111273_1485/container_1547784111273_1485_01_000002"): error=2, No such file or directory
2019-05-07 13:25:02,272 WARN org.apache.oozie.action.hadoop.ShellActionExecutor: SERVER[mlnode01-et.ftc.ru] USER[guest] GROUP[-] TOKEN[] APP[My WorkflowT1] JOB[0000327-190118110215326-oozie-oozi-W] ACTION[0000327-190118110215326-oozie-oozi-W@shell-bfb4] Launcher exception: Cannot run program "refresh003.sh" (in directory "/data/yarn/nm/usercache/guest/appcache/application_1547784111273_1485/container_1547784111273_1485_01_000002"): error=2, No such file or directory
java.io.IOException: Cannot run program "refresh003.sh" (in directory "/data/yarn/nm/usercache/guest/appcache/application_1547784111273_1485/container_1547784111273_1485_01_000002"): error=2, No such file or directory

Понятно, что нужен абсолютный путь. Уже в xml указывал по всякому:
<exec>refresh003.sh</exec>
<file>${nameNode}/tmp/refresh003.sh</file>

Не могу понять, куда копать? Т.е. как хотябы понять почему он файл не находит и как посмотреть путь по которому он его ищет? Может переменную не так подставляет, гадать не хочется, хочется понять где искать.

Полный xml скопировал как есть:
<workflow-app name="My WorkflowT1" xmlns="uri:oozie:workflow:0.5">
    <start to="shell-bfb4"/>
    <kill name="Kill">
        <message>Action failed, error message[${wf:errorMessage(wf:lastErrorNode())}]</message>
    </kill>
    <action name="shell-bfb4">
        <shell xmlns="uri:oozie:shell-action:0.1">
            <job-tracker>${jobTracker}</job-tracker>
            <name-node>${nameNode}</name-node>
            <exec>refresh003.sh</exec>
            <file>${nameNode}/tmp/refresh003.sh#refresh003.sh</file>
              <capture-output/>
        </shell>
        <ok to="End"/>
        <error to="Kill"/>
    </action>
    <end name="End"/>
</workflow-app>


Сообщение было отредактировано: 7 май 19, 09:50
7 май 19, 09:34    [21879618]     Ответить | Цитировать Сообщить модератору
 Re: OOZIE error=2, No such file or directory  [new]
Pavel_PV
Member

Откуда:
Сообщений: 73
Сам отвечу.
Данная ошибка не информативна и может возникать по причине если ваш внутренний *.sh при отработке вернул код 1 после работы т.е. по сути отработал с ошибкой. При этом сам *.sh будет гореть зеленым и как будто будет выполнен успешно. Выходит, что на самом деле файл находится и запускается, но в процессе выполнения что-идёт не так и возвращается ошибка "error=2, No such file or directory ".
У меня как-то так вышло.
8 май 19, 09:29    [21880647]     Ответить | Цитировать Сообщить модератору
Все форумы / NoSQL, Big Data Ответить