You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@superset.apache.org by GitBox <gi...@apache.org> on 2022/04/29 13:35:49 UTC
[GitHub] [superset] lakeron opened a new issue, #19896: Some Binary UUID can be read with mysql-connector-python 8.0.29
lakeron opened a new issue, #19896:
URL: https://github.com/apache/superset/issues/19896
Once the `mysql-connecot-python` upgraded to 8.0.29 we start to see this error
Here is screenshot form corrupted dashboard
![](https://files.slack.com/files-pri/T025EMW7D-F03D1ADCZQF/screenshot_2022-04-29_at_08.41.13.png)
### Traceback
```
│ superset Traceback (most recent call last):
│ superset File "/usr/local/lib/python3.7/site-packages/flask_appbuilder/api/__init__.py", line 85, in wraps
│ superset return f(self, *args, **kwargs)
│ superset File "/app/superset/views/base_api.py", line 85, in wraps
│ superset raise ex
│ superset File "/app/superset/views/base_api.py", line 82, in wraps
│ superset duration, response = time_function(f, self, *args, **kwargs)
│ superset File "/app/superset/utils/core.py", line 1429, in time_function
│ superset response = func(*args, **kwargs)
│ superset File "/app/superset/utils/log.py", line 241, in wrapper
│ superset value = f(*args, **kwargs)
│ superset File "/app/superset/dashboards/api.py", line 393, in get_charts
│ superset charts = DashboardDAO.get_charts_for_dashboard(id_or_slug)
│ superset File "/app/superset/dashboards/dao.py", line 56, in get_charts_for_dashboard
│ superset return DashboardDAO.get_by_id_or_slug(id_or_slug).slices
│ superset File "/usr/local/lib/python3.7/site-packages/sqlalchemy/orm/attributes.py", line 287, in __get__
│ superset return self.impl.get(instance_state(instance), dict_)
│ superset File "/usr/local/lib/python3.7/site-packages/sqlalchemy/orm/attributes.py", line 723, in get
│ superset value = self.callable_(state, passive)
│ superset File "/usr/local/lib/python3.7/site-packages/sqlalchemy/orm/strategies.py", line 760, in _load_for_state
│ superset session, state, primary_key_identity, passive
│ superset File "<string>", line 1, in <lambda>
│ superset File "/usr/local/lib/python3.7/site-packages/sqlalchemy/orm/strategies.py", line 902, in _emit_lazyload
│ superset .with_post_criteria(set_default_params)
│ superset File "/usr/local/lib/python3.7/site-packages/sqlalchemy/ext/baked.py", line 544, in all
│ superset return list(self)
│ superset File "/usr/local/lib/python3.7/site-packages/sqlalchemy/orm/loading.py", line 100, in instances
│ superset cursor.close()
│ superset File "/usr/local/lib/python3.7/site-packages/sqlalchemy/util/langhelpers.py", line 70, in __exit__
│ superset with_traceback=exc_tb,
│ superset File "/usr/local/lib/python3.7/site-packages/sqlalchemy/util/compat.py", line 182, in raise_
│ superset raise exception
│ superset File "/usr/local/lib/python3.7/site-packages/sqlalchemy/orm/loading.py", line 80, in instances
│ superset rows = [proc(row) for row in fetch]
│ superset File "/usr/local/lib/python3.7/site-packages/sqlalchemy/orm/loading.py", line 80, in <listcomp>
│ superset rows = [proc(row) for row in fetch]
│ superset File "/usr/local/lib/python3.7/site-packages/sqlalchemy/orm/loading.py", line 588, in _instance
│ superset populators,
│ superset File "/usr/local/lib/python3.7/site-packages/sqlalchemy/orm/loading.py", line 725, in _populate_full
│ superset dict_[key] = getter(row)
│ superset File "/usr/local/lib/python3.7/site-packages/sqlalchemy/sql/type_api.py", line 1278, in process
│ superset return process_value(impl_processor(value), dialect)
│ superset File "/usr/local/lib/python3.7/site-packages/sqlalchemy/sql/sqltypes.py", line 946, in process
│ superset value = bytes(value)
│ superset TypeError: string argument without an encoding
```
### Hotfix
During debugging we found out that the problem is connected to UUID that is stored as BINARY.
To remedy the problem:
- find the problematic UUID and change the UUID to any random value and the system start to work
- downgrade to `mysql-connecot-python==8.0.28`
### Root case
We tried to discover whats the problem with UUIDs but we hadn't figure out why some of them are unable to read. Due to we are unsure how to solve the situation.
#### Regenerate UUID
We thought about regenerate all UUIDs. But if the problem is that some BINARY stored UUID are unable to ready than regeneration wont help. Also we are not sure if it could cause other issue.
#### Change UUID type to VARCHAR
Not sure if it would work. But it could be option. We don't like that we introduce a change that will create discrepancy between superset master and our implementation.
--
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: notifications-unsubscribe@superset.apache.org.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
[GitHub] [superset] rusackas commented on issue #19896: Some Binary UUID can be read with mysql-connector-python 8.0.29
Posted by "rusackas (via GitHub)" <gi...@apache.org>.
rusackas commented on issue #19896:
URL: https://github.com/apache/superset/issues/19896#issuecomment-1572888827
Is anyone still facing this, or is ti resolved? Hoping that the thread went silent for good reason :)
--
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: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [I] Some Binary UUID can be read with mysql-connector-python 8.0.29 [superset]
Posted by "rusackas (via GitHub)" <gi...@apache.org>.
rusackas closed issue #19896: Some Binary UUID can be read with mysql-connector-python 8.0.29
URL: https://github.com/apache/superset/issues/19896
--
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: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [I] Some Binary UUID can be read with mysql-connector-python 8.0.29 [superset]
Posted by "rusackas (via GitHub)" <gi...@apache.org>.
rusackas commented on issue #19896:
URL: https://github.com/apache/superset/issues/19896#issuecomment-1975649245
Closing this as stale since it's been silent for so long, and we're trying to steer toward a more actionable Issues backlog. If people are still encountering this in current versions (currently 3.x) please re-open this issue, open a new Issue with updated context, or raise a PR to address the problem. Thanks!
--
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: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org