You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by "Bolke de Bruin (JIRA)" <ji...@apache.org> on 2017/11/10 07:51:01 UTC

[jira] [Resolved] (AIRFLOW-1102) 'airflow webserver' doesn't work with gunicorn 19.4+

     [ https://issues.apache.org/jira/browse/AIRFLOW-1102?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bolke de Bruin resolved AIRFLOW-1102.
-------------------------------------
       Resolution: Fixed
    Fix Version/s: 1.9.0

Issue resolved by pull request #2775
[https://github.com/apache/incubator-airflow/pull/2775]

> 'airflow webserver' doesn't work with gunicorn 19.4+
> ----------------------------------------------------
>
>                 Key: AIRFLOW-1102
>                 URL: https://issues.apache.org/jira/browse/AIRFLOW-1102
>             Project: Apache Airflow
>          Issue Type: Bug
>          Components: dependencies
>            Reporter: Yuu Yamashita
>             Fix For: 1.9.0
>
>
> {{airflow webserver}} will show an error of "Error: 'airflow.www.gunicorn_config' doesn't exist" if it invoked with gunicorn 19.4+, just like the following example.
> {noformat}
> % airflow webserver
> [2017-04-11 05:34:28,945] {__init__.py:57} INFO - Using executor LocalExecutor
>   ____________       _____________
>  ____    |__( )_________  __/__  /________      __
> ____  /| |_  /__  ___/_  /_ __  /_  __ \_ | /| / /
> ___  ___ |  / _  /   _  __/ _  / / /_/ /_ |/ |/ /
>  _/_/  |_/_/  /_/    /_/    /_/  \____/____/|__/
> [2017-04-11 05:34:29,968] [32339] {models.py:167} INFO - Filling up the DagBag from ./dags
> [2017-04-11 05:34:30,427] [32339] {connectionpool.py:735} INFO - Starting new HTTPS connection (1): sts.amazonaws.com
> Running the Gunicorn Server with:
> Workers: 4 sync
> Host: 0.0.0.0:8081
> Timeout: 120
> Logfiles: - -
> =================================================================
> Error: 'airflow.www.gunicorn_config' doesn't exist
> {noformat}
> At present, it seems that airflow is configured to require gunicorn prior to 19.4. It should be fixed intrinsically for future upgrade of gunicorn anyways.
> https://github.com/benoitc/gunicorn/blob/19.4/gunicorn/app/base.py#L111-L119
> Starting from {{gunicorn}} 9.4, it seems it started requiring prefix "python:" for module name passed to {{-c}}. Because {{airflow webserver}} [is specifying airflow.www.gunicorn_config|https://github.com/apache/incubator-airflow/blob/6b1c327ee886488eedbe8a8721708b89f37d5560/airflow/bin/cli.py#L779] as {{-c}} for {{gunicorn}}, it won't work with gunicorn 9.4+
> * gunicorn 9.3: https://github.com/benoitc/gunicorn/blob/19.3/gunicorn/app/base.py#L111-L114
> * gunicorn 9.4: https://github.com/benoitc/gunicorn/blob/19.4/gunicorn/app/base.py#L111-L119
> I've opened [a PR to gunicorn|https://github.com/benoitc/gunicorn/pull/1499] to restore original behavior prior to 19.3. However, it'd be also better to be fixed in {{airflow webserver}} itself.
> h5. See also
> * https://github.com/benoitc/gunicorn/pull/1068



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)