[ https://issues.apache.org/jira/browse/AIRFLOW-5393?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
ivan de los santos updated AIRFLOW-5393: ---------------------------------------- Description: Airflow UI will crash in the browser returning "Oops" message and the Traceback of the crashing error. *How to replicate*: # Launch airflow webserver -p 8080 # Go to the Airflow-UI # Click on "Data Profiling" # Select any connection to a database. # Click on ".csv" button without writing any text on the query field. # You will get an "oops" message with the Traceback. *File causing the problem*: /python3.6/dist-packages/airflow/www/views.py (Line 2317) *Reasons of the problem*: # UnboundLocalError: local variable 'df' referenced before assignment * This means "df" was never declared, in fact, df it is contained in a try / except block so the except is launched before df gets assigned. {code:java} Traceback (most recent call last): File "/home/rde/.local/lib/python3.6/site-packages/flask/app.py", line 2446, in wsgi_app response = self.full_dispatch_request() File "/home/rde/.local/lib/python3.6/site-packages/flask/app.py", line 1951, in full_dispatch_request rv = self.handle_user_exception(e) File "/home/rde/.local/lib/python3.6/site-packages/flask/app.py", line 1820, in handle_user_exception reraise(exc_type, exc_value, tb) File "/home/rde/.local/lib/python3.6/site-packages/flask/_compat.py", line 39, in reraise raise value File "/home/rde/.local/lib/python3.6/site-packages/flask/app.py", line 1949, in full_dispatch_request rv = self.dispatch_request() File "/home/rde/.local/lib/python3.6/site-packages/flask/app.py", line 1935, in dispatch_request return self.view_functions[rule.endpoint](**req.view_args) File "/home/rde/.local/lib/python3.6/site-packages/flask_admin/base.py", line 69, in inner return self._run_view(f, *args, **kwargs) File "/home/rde/.local/lib/python3.6/site-packages/flask_admin/base.py", line 368, in _run_view return fn(self, *args, **kwargs) File "/usr/local/lib/python3.6/dist-packages/airflow/www/utils.py", line 375, in view_func return f(*args, **kwargs) File "/usr/local/lib/python3.6/dist-packages/airflow/utils/db.py", line 74, in wrapper return func(*args, **kwargs) File "/usr/local/lib/python3.6/dist-packages/airflow/www/views.py", line 2318, in query response=df.to_csv(index=False), UnboundLocalError: local variable 'df' referenced before assignment {code} *Proposed solution*: checking the *_error_* variable which will be True as it raises an exception "_(2006, "Unknown MySQL server host 'mysql' (2)")_" and df is never assigned. {code:java} if csv and not error: return Response( response=df.to_csv(index=False), status=200, mimetype="application/text") {code} I am willing to work in this issue, I think it might be already fixed in Github's master branch regardless. This is my first open issue. Best regards, Iván was: Airflow UI will crash in the browser returning "Oops" message and the Traceback of the crashing error. *How to replicate*: # Launch airflow webserver -p 8080 # Go to the Airflow-UI # Click on "Data Profiling" # Select any connection to a database. # Click on ".csv" button without writing any text on the query field. # You will get an "oops" message with the Traceback. *File causing the problem*: /python3.6/dist-packages/airflow/www/views.py (Line 2317) *Reasons of the problem*: # UnboundLocalError: local variable 'df' referenced before assignment * This means "df" was never declared, in fact, df it is contained in a try / except block so the except is launched before df gets assigned. {code:java} Traceback (most recent call last): File "/home/rde/.local/lib/python3.6/site-packages/flask/app.py", line 2446, in wsgi_app response = self.full_dispatch_request() File "/home/rde/.local/lib/python3.6/site-packages/flask/app.py", line 1951, in full_dispatch_request rv = self.handle_user_exception(e) File "/home/rde/.local/lib/python3.6/site-packages/flask/app.py", line 1820, in handle_user_exception reraise(exc_type, exc_value, tb) File "/home/rde/.local/lib/python3.6/site-packages/flask/_compat.py", line 39, in reraise raise value File "/home/rde/.local/lib/python3.6/site-packages/flask/app.py", line 1949, in full_dispatch_request rv = self.dispatch_request() File "/home/rde/.local/lib/python3.6/site-packages/flask/app.py", line 1935, in dispatch_request return self.view_functions[rule.endpoint](**req.view_args) File "/home/rde/.local/lib/python3.6/site-packages/flask_admin/base.py", line 69, in inner return self._run_view(f, *args, **kwargs) File "/home/rde/.local/lib/python3.6/site-packages/flask_admin/base.py", line 368, in _run_view return fn(self, *args, **kwargs) File "/usr/local/lib/python3.6/dist-packages/airflow/www/utils.py", line 375, in view_func return f(*args, **kwargs) File "/usr/local/lib/python3.6/dist-packages/airflow/utils/db.py", line 74, in wrapper return func(*args, **kwargs) File "/usr/local/lib/python3.6/dist-packages/airflow/www/views.py", line 2318, in query response=df.to_csv(index=False), UnboundLocalError: local variable 'df' referenced before assignment {code} *Proposed solution*: checking the *_error_* variable which will be True as it raises an exception "_(2006, "Unknown MySQL server host 'mysql' (2)")_" and df is never assigned. {code:java} if csv and not error: return Response( response=df.to_csv(index=False), status=200, mimetype="application/text") {code} I am willing to work in this issue, I think it might be fixed in Github's master branch tho. This is my first open issue. Best regards, Iván > UI crash in the Ad Hoc Query menu > --------------------------------- > > Key: AIRFLOW-5393 > URL: https://issues.apache.org/jira/browse/AIRFLOW-5393 > Project: Apache Airflow > Issue Type: Bug > Components: ui > Affects Versions: 1.10.4 > Environment: Linux > NAME="Ubuntu" > VERSION="18.04.2 LTS (Bionic Beaver)" > Airflow version 1.10.4 > Reporter: ivan de los santos > Priority: Minor > Labels: beginner, easyfix, patch > Attachments: Captura de pantalla de 2019-09-03 13-42-02.png > > > Airflow UI will crash in the browser returning "Oops" message and the > Traceback of the crashing error. > > *How to replicate*: > # Launch airflow webserver -p 8080 > # Go to the Airflow-UI > # Click on "Data Profiling" > # Select any connection to a database. > # Click on ".csv" button without writing any text on the query field. > # You will get an "oops" message with the Traceback. > > *File causing the problem*: /python3.6/dist-packages/airflow/www/views.py > (Line 2317) > > *Reasons of the problem*: > # UnboundLocalError: local variable 'df' referenced before assignment > * This means "df" was never declared, in fact, df it is contained in a try / > except block so the except is launched before df gets assigned. > {code:java} > Traceback (most recent call last): > File "/home/rde/.local/lib/python3.6/site-packages/flask/app.py", line > 2446, in wsgi_app > response = self.full_dispatch_request() > File "/home/rde/.local/lib/python3.6/site-packages/flask/app.py", line > 1951, in full_dispatch_request > rv = self.handle_user_exception(e) > File "/home/rde/.local/lib/python3.6/site-packages/flask/app.py", line > 1820, in handle_user_exception > reraise(exc_type, exc_value, tb) > File "/home/rde/.local/lib/python3.6/site-packages/flask/_compat.py", line > 39, in reraise > raise value > File "/home/rde/.local/lib/python3.6/site-packages/flask/app.py", line > 1949, in full_dispatch_request > rv = self.dispatch_request() > File "/home/rde/.local/lib/python3.6/site-packages/flask/app.py", line > 1935, in dispatch_request > return self.view_functions[rule.endpoint](**req.view_args) > File "/home/rde/.local/lib/python3.6/site-packages/flask_admin/base.py", > line 69, in inner > return self._run_view(f, *args, **kwargs) > File "/home/rde/.local/lib/python3.6/site-packages/flask_admin/base.py", > line 368, in _run_view > return fn(self, *args, **kwargs) > File "/usr/local/lib/python3.6/dist-packages/airflow/www/utils.py", line > 375, in view_func > return f(*args, **kwargs) > File "/usr/local/lib/python3.6/dist-packages/airflow/utils/db.py", line 74, > in wrapper > return func(*args, **kwargs) > File "/usr/local/lib/python3.6/dist-packages/airflow/www/views.py", line > 2318, in query > response=df.to_csv(index=False), > UnboundLocalError: local variable 'df' referenced before assignment > {code} > > *Proposed solution*: checking the *_error_* variable which will be True as it > raises an exception "_(2006, "Unknown MySQL server host 'mysql' (2)")_" and > df is never assigned. > > {code:java} > if csv and not error: > return Response( > response=df.to_csv(index=False), > status=200, > mimetype="application/text") > {code} > > > I am willing to work in this issue, I think it might be already fixed in > Github's master branch regardless. > This is my first open issue. > > Best regards, > Iván -- This message was sent by Atlassian Jira (v8.3.2#803003)