You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by "Yuu Yamashita (JIRA)" <ji...@apache.org> on 2017/04/12 01:35:41 UTC
[jira] [Created] (AIRFLOW-1102) 'airflow webserver' doesn't work
with gunicorn 19.4+
Yuu Yamashita created AIRFLOW-1102:
--------------------------------------
Summary: '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
{{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.3.15#6346)