airflow-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ash Berlin-Taylor (JIRA)" <>
Subject [jira] [Commented] (AIRFLOW-1479) BashOperator does not open pipe for STDIN
Date Tue, 01 Aug 2017 15:05:00 GMT


Ash Berlin-Taylor commented on AIRFLOW-1479:

{{PIPE}} seems like the wrong choice for stdin as we won't be feeding any input to the subprocess.
There is a special value {{DEVNULL}} that seems more apropriate for stdin.

(We are not currently passing any value which means the child inherits stdin from the parent
process. I'm not sure what it's connected to but a bit surprised to see if giving EBADF)

> BashOperator does not open pipe for STDIN
> -----------------------------------------
>                 Key: AIRFLOW-1479
>                 URL:
>             Project: Apache Airflow
>          Issue Type: Bug
>          Components: operators
>    Affects Versions: 1.8.1
>         Environment: FreeBSD, JRuby 9.x, Rake, Python 2.7, Airflow 1.8
>            Reporter: Cedrik Neumann
>            Priority: Trivial
>              Labels: easyfix
> From JRuby 9 onwards we experienced issues when executing Rake tasks via the BashOperator
with the error message:
> {noformat}
> Errno::EBADF: Bad file descriptor - 0
> {noformat}
> We figured out that the issue is due to a missing pipe for STDIN when the BashOperator
calls `Popen`.
> The quick fix of the issue would be to add a pipe for STDIN as well:
> {code:python}
> sp = Popen(
>                     ['bash', fname],
>                     stdout=PIPE, stderr=STDOUT, stdin=PIPE,
>                     cwd=tmp_dir, env=self.env)
> {code}

This message was sent by Atlassian JIRA

View raw message