[ 
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, infact df it is contained in a try / 
except block so the except will probably be launched before df gets an 
assignment.

{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*: Return a message indicating that the query is emtpy.
{code:java}
        if csv: 
            if 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 master tho.

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 2318)

 

*Reasons of the problem*:
 #  UnboundLocalError: local variable 'df' referenced before assignment

 * This means "df" was never declared, infact df it is contained in a try / 
except block so the except will probably be launched before df gets an 
assignment.

{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*: Return a message indicating that the query is emtpy.

 

 

I am willing to work in this issue if someone with more experience could guide 
me about how he expects the application to behave.

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, infact df it is contained in a try / 
> except block so the except will probably be launched before df gets an 
> assignment.
> {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*: Return a message indicating that the query is emtpy.
> {code:java}
>         if csv: 
>             if 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 master tho.
> This is my first open issue.
>  
> Best regards,
> Iván



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

Reply via email to