akeeme opened a new issue, #25619:
URL: https://github.com/apache/superset/issues/25619

   As of recently, when accessing the charts tab in Superset, I encounter an 
AttributeError, suggesting that the application is trying to access an 
attribute or method that doesn't exist or is inaccessible in the context it's 
being called.
   
   #### How to reproduce the bug
   
   1. Click on the chart's tab
   2. See error
   
   ### Expected results
   Expected to see all charts
   
   ### Actual results
   
   
![image](https://github.com/apache/superset/assets/22639000/0f4fca11-2088-45c7-8e77-c8f4b4eb7321)
   
   ### Environment
   
   (please complete the following information):
   
   - Chrome and Firefox:
   - superset version: `2.1.0`
   - python version: `3.9.16`
   - node.js version: `node -v`
   - any feature flags active:
   
   ### Checklist
   
   Make sure to follow these steps before submitting your issue - thank you!
   
   - [x] I have checked the superset logs for python stacktraces and included 
it here as text if there are any.
   - [] I have reproduced the issue with at least the latest released version 
of superset.
   - [x] I have checked the issue tracker for the same issue and I haven't 
found one similar.
   
   ### Additional context
   
   
   all packages and versions
   `alembic                   1.11.3
   amqp                      5.1.1
   apache-superset           2.1.0
   apispec                   6.3.0
   async-timeout             4.0.3
   attrs                     23.1.0
   Babel                     2.12.1
   backoff                   2.2.1
   bcrypt                    4.0.1
   billiard                  4.1.0
   bleach                    3.3.1
   Brotli                    1.0.9
   cachelib                  0.4.1
   celery                    5.3.1
   certifi                   2023.7.22
   cffi                      1.15.1
   click                     8.1.7
   click-didyoumean          0.3.0
   click-plugins             1.1.1
   click-repl                0.3.0
   colorama                  0.4.6
   convertdate               2.4.0
   cron-descriptor           1.4.0
   croniter                  1.4.1
   cryptography              39.0.0
   Deprecated                1.2.14
   deprecation               2.1.0
   dnspython                 2.4.2
   email-validator           1.3.1
   exceptiongroup            1.1.3
   Flask                     2.1.3
   Flask-AppBuilder          4.3.6
   Flask-Babel               2.0.0
   Flask-Caching             1.10.1
   Flask-Compress            1.13
   Flask-JWT-Extended        4.5.2
   Flask-Limiter             3.4.0
   Flask-Login               0.6.0
   Flask-Migrate             3.1.0
   Flask-SQLAlchemy          2.5.1
   flask-talisman            1.1.0
   Flask-WTF                 1.0.1
   func-timeout              4.3.5
   geographiclib             2.0
   geopy                     2.3.0
   graphlib-backport         1.0.3
   greenlet                  2.0.2
   gunicorn                  21.2.0
   h11                       0.14.0
   hashids                   1.3.1
   hijri-converter           2.3.1
   holidays                  0.17.2
   humanize                  4.8.0
   ibm-db                    3.2.0
   ibm-db-sa                 0.4.0
   idna                      3.4
   importlib-metadata        6.8.0
   importlib-resources       6.0.1
   isodate                   0.6.1
   itsdangerous              2.1.2
   Jinja2                    3.1.2
   jsonschema                4.19.0
   jsonschema-specifications 2023.7.1
   kombu                     5.3.1
   korean-lunar-calendar     0.3.1
   limits                    3.5.0
   Mako                      1.2.4
   Markdown                  3.4.4
   markdown-it-py            3.0.0
   MarkupSafe                2.1.3
   marshmallow               3.20.1
   marshmallow-enum          1.5.1
   marshmallow-sqlalchemy    0.26.1
   mdurl                     0.1.2
   msgpack                   1.0.5
   numpy                     1.23.5
   ordered-set               4.1.0
   outcome                   1.2.0
   packaging                 23.1
   pandas                    1.5.3
   paramiko                  3.3.1
   parsedatetime             2.6
   pgsanity                  0.2.9
   pip                       20.2.4
   polyline                  2.0.0
   prison                    0.2.1
   prompt-toolkit            3.0.39
   psycopg2-binary           2.9.7
   pyarrow                   10.0.1
   pycparser                 2.21
   Pygments                  2.16.1
   PyJWT                     2.8.0
   PyMeeus                   0.5.12
   PyNaCl                    1.5.0
   pyparsing                 3.1.1
   PySocks                   1.7.1
   python-dateutil           2.8.2
   python-dotenv             1.0.0
   python-geohash            0.8.5
   pytz                      2023.3
   PyYAML                    6.0.1
   redis                     5.0.0
   referencing               0.30.2
   rich                      13.5.2
   rpds-py                   0.9.2
   selenium                  4.11.2
   setuptools                50.3.2
   simplejson                3.19.1
   six                       1.16.0
   slack-sdk                 3.21.3
   sniffio                   1.3.0
   sortedcontainers          2.4.0
   SQLAlchemy                1.4.49
   SQLAlchemy-Utils          0.38.3
   sqlparse                  0.4.3
   sshtunnel                 0.4.0
   supervisor                4.2.5
   tabulate                  0.8.10
   trio                      0.22.2
   trio-websocket            0.10.3
   typing-extensions         4.7.1
   tzdata                    2023.3
   urllib3                   2.0.4
   vine                      5.0.0
   wcwidth                   0.2.6
   webencodings              0.5.1
   werkzeug                  2.3.7
   wrapt                     1.15.0
   wsproto                   1.2.0
   WTForms                   2.3.3
   WTForms-JSON              0.3.5
   XlsxWriter                3.0.9
   zipp                      3.16.2`
   
   
   Logs when accessing charts tab
   `2023-10-11 17:45:52,712:WARNING:superset.db_engine_specs:Unable to load 
SQLAlchemy dialect <class 'ibm_db_sa.pyodbc.AS400Dialect_pyodbc'>: No module 
named 'sqlalchemy.connectors.zxJDBC'
   Unable to load SQLAlchemy dialect <class 
'ibm_db_sa.pyodbc.AS400Dialect_pyodbc'>: No module named 
'sqlalchemy.connectors.zxJDBC'
   2023-10-11 17:45:52,713:WARNING:superset.db_engine_specs:Unable to load 
SQLAlchemy dialect <class 'ibm_db_sa.pyodbc.AS400Dialect_pyodbc'>: No module 
named 'sqlalchemy.connectors.zxJDBC'
   Unable to load SQLAlchemy dialect <class 
'ibm_db_sa.pyodbc.AS400Dialect_pyodbc'>: No module named 
'sqlalchemy.connectors.zxJDBC'
   2023-10-11 17:45:52,715:WARNING:superset.db_engine_specs:Unable to load 
SQLAlchemy dialect <class 'ibm_db_sa.pyodbc.AS400Dialect_pyodbc'>: No module 
named 'sqlalchemy.connectors.zxJDBC'
   Unable to load SQLAlchemy dialect <class 
'ibm_db_sa.pyodbc.AS400Dialect_pyodbc'>: No module named 
'sqlalchemy.connectors.zxJDBC'
   2023-10-11 17:45:52,716:WARNING:superset.db_engine_specs:Unable to load 
SQLAlchemy dialect <class 'ibm_db_sa.pyodbc.AS400Dialect_pyodbc'>: No module 
named 'sqlalchemy.connectors.zxJDBC'
   2023-10-11 17:45:52,810:INFO:werkzeug:172.24.2.11 - - [11/Oct/2023 17:45:52] 
"GET 
/chart/list/?pageIndex=0&sortColumn=changed_on_delta_humanized&sortOrder=desc&viewMode=table
 HTTP/1.1" 200 -
   HTTPException
   Traceback (most recent call last):
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/flask/app.py", 
line 1517, in full_dispatch_request
       rv = self.dispatch_request()
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/flask/app.py", 
line 1503, in dispatch_request
       return 
self.ensure_sync(self.view_functions[rule.endpoint])(**req.view_args)
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/flask/scaffold.py",
 line 322, in send_static_file
       return send_from_directory(
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/flask/helpers.py",
 line 676, in send_from_directory
       return werkzeug.utils.send_from_directory(  # type: ignore
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/werkzeug/utils.py",
 line 574, in send_from_directory
       raise NotFound()
   werkzeug.exceptions.NotFound: 404 Not Found: The requested URL was not found 
on the server. If you entered the URL manually please check your spelling and 
try again.
   2023-10-11 17:45:52,931:WARNING:superset.views.base:HTTPException
   Traceback (most recent call last):
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/flask/app.py", 
line 1517, in full_dispatch_request
       rv = self.dispatch_request()
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/flask/app.py", 
line 1503, in dispatch_request
       return 
self.ensure_sync(self.view_functions[rule.endpoint])(**req.view_args)
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/flask/scaffold.py",
 line 322, in send_static_file
       return send_from_directory(
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/flask/helpers.py",
 line 676, in send_from_directory
       return werkzeug.utils.send_from_directory(  # type: ignore
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/werkzeug/utils.py",
 line 574, in send_from_directory
       raise NotFound()
   werkzeug.exceptions.NotFound: 404 Not Found: The requested URL was not found 
on the server. If you entered the URL manually please check your spelling and 
try again.
   2023-10-11 17:45:52,933:INFO:werkzeug:172.24.2.11 - - [11/Oct/2023 17:45:52] 
"GET /static/appbuilder/css/font-awesome.min.css HTTP/1.1" 404 -
   2023-10-11 17:45:53,495:INFO:werkzeug:172.24.2.11 - - [11/Oct/2023 17:45:53] 
"GET 
/api/v1/database/?q=(filters:!((col:allow_file_upload,opr:upload_is_enabled,value:!t)))
 HTTP/1.1" 200 -
   2023-10-11 17:45:53,502:INFO:werkzeug:172.24.2.11 - - [11/Oct/2023 17:45:53] 
"GET 
/api/v1/database/?q=(filters:!((col:database_name,opr:neq,value:examples))) 
HTTP/1.1" 200 -
   2023-10-11 17:45:53,760:INFO:werkzeug:172.24.2.11 - - [11/Oct/2023 17:45:53] 
"GET /api/v1/chart/_info?q=(keys:!(permissions)) HTTP/1.1" 200 -
   'Query' object has no attribute 'explore_url'
   Traceback (most recent call last):
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/superset/views/base.py",
 line 250, in wraps
       return f(self, *args, **kwargs)
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/superset/views/base_api.py",
 line 460, in get_list_headless
       duration, response = time_function(super().get_list_headless, **kwargs)
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/superset/utils/core.py",
 line 1586, in time_function
       response = func(*args, **kwargs)
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/flask_appbuilder/api/__init__.py",
 line 1613, in get_list_headless
       response[API_RESULT_RES_KEY] = list_model_schema.dump(lst, many=True)
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/marshmallow/schema.py",
 line 549, in dump
       result = self._serialize(processed_obj, many=many)
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/marshmallow/schema.py",
 line 511, in _serialize
       return [
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/marshmallow/schema.py",
 line 512, in <listcomp>
       self._serialize(d, many=False)
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/marshmallow/schema.py",
 line 517, in _serialize
       value = field_obj.serialize(attr_name, obj, accessor=self.get_attribute)
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/marshmallow/fields.py",
 line 340, in serialize
       return self._serialize(value, attr, obj, **kwargs)
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/marshmallow/fields.py",
 line 2037, in _serialize
       return self._call_or_raise(self.serialize_func, obj, attr)
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/marshmallow/fields.py",
 line 2050, in _call_or_raise
       return func(value)
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/superset/models/slice.py",
 line 172, in datasource_url
       return datasource.explore_url if datasource else None
   AttributeError: 'Query' object has no attribute 'explore_url'
   2023-10-11 17:45:53,819:ERROR:superset.views.base:'Query' object has no 
attribute 'explore_url'
   Traceback (most recent call last):
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/superset/views/base.py",
 line 250, in wraps
       return f(self, *args, **kwargs)
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/superset/views/base_api.py",
 line 460, in get_list_headless
       duration, response = time_function(super().get_list_headless, **kwargs)
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/superset/utils/core.py",
 line 1586, in time_function
       response = func(*args, **kwargs)
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/flask_appbuilder/api/__init__.py",
 line 1613, in get_list_headless
       response[API_RESULT_RES_KEY] = list_model_schema.dump(lst, many=True)
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/marshmallow/schema.py",
 line 549, in dump
       result = self._serialize(processed_obj, many=many)
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/marshmallow/schema.py",
 line 511, in _serialize
       return [
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/marshmallow/schema.py",
 line 512, in <listcomp>
       self._serialize(d, many=False)
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/marshmallow/schema.py",
 line 517, in _serialize
       value = field_obj.serialize(attr_name, obj, accessor=self.get_attribute)
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/marshmallow/fields.py",
 line 340, in serialize
       return self._serialize(value, attr, obj, **kwargs)
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/marshmallow/fields.py",
 line 2037, in _serialize
       return self._call_or_raise(self.serialize_func, obj, attr)
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/marshmallow/fields.py",
 line 2050, in _call_or_raise
       return func(value)
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/superset/models/slice.py",
 line 172, in datasource_url
       return datasource.explore_url if datasource else None
   AttributeError: 'Query' object has no attribute 'explore_url'
   2023-10-11 17:45:53,830:INFO:werkzeug:172.24.2.11 - - [11/Oct/2023 17:45:53] 
"GET 
/api/v1/chart/?q=(order_column:changed_on_delta_humanized,order_direction:desc,page:0,page_size:25)
 HTTP/1.1" 500 -
   2023-10-11 17:45:54,334:INFO:flask_wtf.csrf:The CSRF token is missing.
   Refresh CSRF token error
   Traceback (most recent call last):
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/flask_wtf/csrf.py",
 line 261, in protect
       validate_csrf(self._get_csrf_token())
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/flask_wtf/csrf.py",
 line 100, in validate_csrf
       raise ValidationError("The CSRF token is missing.")
   wtforms.validators.ValidationError: The CSRF token is missing.
   
   During handling of the above exception, another exception occurred:
   
   Traceback (most recent call last):
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/flask/app.py", 
line 1515, in full_dispatch_request
       rv = self.preprocess_request()
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/flask/app.py", 
line 1857, in preprocess_request
       rv = self.ensure_sync(before_func)()
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/flask_wtf/csrf.py",
 line 229, in csrf_protect
       self.protect()
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/flask_wtf/csrf.py",
 line 264, in protect
       self._error_response(e.args[0])
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/flask_wtf/csrf.py",
 line 307, in _error_response
       raise CSRFError(reason)
   flask_wtf.csrf.CSRFError: 400 Bad Request: The CSRF token is missing.
   2023-10-11 17:45:54,334:WARNING:superset.views.base:Refresh CSRF token error
   Traceback (most recent call last):
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/flask_wtf/csrf.py",
 line 261, in protect
       validate_csrf(self._get_csrf_token())
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/flask_wtf/csrf.py",
 line 100, in validate_csrf
       raise ValidationError("The CSRF token is missing.")
   wtforms.validators.ValidationError: The CSRF token is missing.
   
   During handling of the above exception, another exception occurred:
   
   Traceback (most recent call last):
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/flask/app.py", 
line 1515, in full_dispatch_request
       rv = self.preprocess_request()
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/flask/app.py", 
line 1857, in preprocess_request
       rv = self.ensure_sync(before_func)()
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/flask_wtf/csrf.py",
 line 229, in csrf_protect
       self.protect()
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/flask_wtf/csrf.py",
 line 264, in protect
       self._error_response(e.args[0])
     File 
"/mnt/sprset-folder/superset-venv/lib64/python3.9/site-packages/flask_wtf/csrf.py",
 line 307, in _error_response
       raise CSRFError(reason)
   flask_wtf.csrf.CSRFError: 400 Bad Request: The CSRF token is missing.
   2023-10-11 17:45:54,335:INFO:werkzeug:172.24.2.11 - - [11/Oct/2023 17:45:54] 
"POST /superset/log/?explode=events HTTP/1.1" 302 -
   2023-10-11 17:45:54,409:INFO:werkzeug:172.24.2.11 - - [11/Oct/2023 17:45:54] 
"GET /login/ HTTP/1.1" 302 -
   2023-10-11 17:45:54,475:INFO:werkzeug:172.24.2.11 - - [11/Oct/2023 17:45:54] 
"GET / HTTP/1.1" 302 -
   Unable to load SQLAlchemy dialect <class 
'ibm_db_sa.pyodbc.AS400Dialect_pyodbc'>: No module named 
'sqlalchemy.connectors.zxJDBC'
   2023-10-11 17:45:54,573:WARNING:superset.db_engine_specs:Unable to load 
SQLAlchemy dialect <class 'ibm_db_sa.pyodbc.AS400Dialect_pyodbc'>: No module 
named 'sqlalchemy.connectors.zxJDBC'
   Unable to load SQLAlchemy dialect <class 
'ibm_db_sa.pyodbc.AS400Dialect_pyodbc'>: No module named 
'sqlalchemy.connectors.zxJDBC'
   2023-10-11 17:45:54,574:WARNING:superset.db_engine_specs:Unable to load 
SQLAlchemy dialect <class 'ibm_db_sa.pyodbc.AS400Dialect_pyodbc'>: No module 
named 'sqlalchemy.connectors.zxJDBC'
   Unable to load SQLAlchemy dialect <class 
'ibm_db_sa.pyodbc.AS400Dialect_pyodbc'>: No module named 
'sqlalchemy.connectors.zxJDBC'
   2023-10-11 17:45:54,575:WARNING:superset.db_engine_specs:Unable to load 
SQLAlchemy dialect <class 'ibm_db_sa.pyodbc.AS400Dialect_pyodbc'>: No module 
named 'sqlalchemy.connectors.zxJDBC'
   Unable to load SQLAlchemy dialect <class 
'ibm_db_sa.pyodbc.AS400Dialect_pyodbc'>: No module named 
'sqlalchemy.connectors.zxJDBC'
   2023-10-11 17:45:54,576:WARNING:superset.db_engine_specs:Unable to load 
SQLAlchemy dialect <class 'ibm_db_sa.pyodbc.AS400Dialect_pyodbc'>: No module 
named 'sqlalchemy.connectors.zxJDBC'
   2023-10-11 17:45:54,692:INFO:werkzeug:172.24.2.11 - - [11/Oct/2023 17:45:54] 
"GET /superset/welcome/ HTTP/1.1" 200 -`
   
   
   
   any help is appreciated!
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to