You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by "Francisco Rodera (Jira)" <ji...@apache.org> on 2020/01/22 03:12:00 UTC

[jira] [Comment Edited] (AIRFLOW-6567) Configuration broken when using proxy_fix

    [ https://issues.apache.org/jira/browse/AIRFLOW-6567?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17020721#comment-17020721 ] 

Francisco Rodera edited comment on AIRFLOW-6567 at 1/22/20 3:11 AM:
--------------------------------------------------------------------

This issue is also impacting our Airflow deployments after upgrading to v1.10.7

 

EDIT: This issue looks like a duplicate of https://issues.apache.org/jira/browse/AIRFLOW-6345

 


was (Author: frodera):
This issue is also impacting our Airflow deployments after upgrading to v1.10.7

 

> Configuration broken when using proxy_fix
> -----------------------------------------
>
>                 Key: AIRFLOW-6567
>                 URL: https://issues.apache.org/jira/browse/AIRFLOW-6567
>             Project: Apache Airflow
>          Issue Type: Bug
>          Components: webserver
>    Affects Versions: 1.10.7
>            Reporter: Tobias Edvardsson
>            Priority: Blocker
>
> We tried to upgrade from 1.10.6 to 1.10.7 but encountered an issue when trying to access the webserver. We are running the solution in kubernetes at AWS behind Kong as proxy/gateway.
> 1.10.6 works niceley but after the upgrade we get the following exception:
> {code:java}
> [2020-01-15 08:12:02 +0000] [111] [ERROR] Error handling request /1/15/2020 9:12:02 AM Traceback (most recent call last):1/15/2020 9:12:02 AM   File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/sync.py", line 135, in handle1/15/2020 9:12:02 AM     self.handle_request(listener, req, client, addr)1/15/2020 9:12:02 AM   File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/sync.py", line 176, in handle_request1/15/2020 9:12:02 AM     respiter = self.wsgi(environ, resp.start_response)1/15/2020 9:12:02 AM   File "/usr/local/lib/python3.7/site-packages/werkzeug/middleware/dispatcher.py", line 66, in __call__1/15/2020 9:12:02 AM     return app(environ, start_response)1/15/2020 9:12:02 AM   File "/usr/local/lib/python3.7/site-packages/flask/app.py", line 2463, in __call__1/15/2020 9:12:02 AM     return self.wsgi_app(environ, start_response)1/15/2020 9:12:02 AM   File "/usr/local/lib/python3.7/site-packages/werkzeug/middleware/proxy_fix.py", line 195, in __call__1/15/2020 9:12:02 AM     x_for = self._get_trusted_comma(self.x_for, environ_get("HTTP_X_FORWARDED_FOR"))1/15/2020 9:12:02 AM   File "/usr/local/lib/python3.7/site-packages/werkzeug/middleware/proxy_fix.py", line 166, in _get_trusted_comma1/15/2020 9:12:02 AM     if len(values) >= trusted:1/15/2020 9:12:02 AM TypeError: '>=' not supported between instances of 'int' and 'str'
> {code}
> From my own investigation the issue seem to be the new configuration options for the proxy where the configuration which are fetched returns strings rather then integers as it should.
> [https://github.com/apache/airflow/pull/6723]
> {code:java}
> x_for=conf.get("webserver", "PROXY_FIX_X_FOR", fallback=1),            x_proto=conf.get("webserver", "PROXY_FIX_X_PROTO", fallback=1),            x_host=conf.get("webserver", "PROXY_FIX_X_HOST", fallback=1),            x_port=conf.get("webserver", "PROXY_FIX_X_PORT", fallback=1),            x_prefix=conf.get("webserver", "PROXY_FIX_X_PREFIX", fallback=1)
> {code}
> (row 51-56 in airflow/www/app.py)
> The following values are expected to be integers and not strings.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)