Android manager在“Done loading packages”之后就不动了

本文介绍了一种解决Android SDK更新过程中遇到的“Doneloadingpackages”后无法继续的问题的方法。通过修改SDKManager设置及hosts文件,强制使用http协议来解决更新停滞的情况。
在“Done loading packages”之后就不动了。

2012-03-30 17:03提问者采纳
在SDK Manager下Tools->Options打开了SDK Manager的Settings,选中“Force https://… sources to be fetched using http://…”,强制使用http协议。

Windows在C:\WINDOWS\system32\drivers\etc打开/etc/hosts文件,添加

#google_android更新

203.208.46.146 dl.google.com

203.208.46.146 dl-ssl.google.com



然后就可以正常更新
(venv) gapinyc@DESKTOP-9QS7RL5:~/superset$ gunicorn \ --bind 0.0.0.0:8088 \ --workers 4 \ --worker-class gthread \ --threads 4 \ --timeout 120 \ --max-requests 1000 \ --max-requests-jitter 100 \ --preload \ --access-logfile - \ --error-logfile - \ "superset.app:create_app()" 👉 Using SECRET_KEY: '1sCjCsfAPMBskPWPSJ0Gja7JvpufVc50vTW04MSiJuzNN3JPlUYL3MR+' Loaded your LOCAL configuration at [/home/gapinyc/superset/superset_config.py] 2025-10-25 13:13:27,140:INFO:superset.initialization:Setting database isolation level to READ COMMITTED [2025-10-25 13:13:27 +0800] [19396] [INFO] Starting gunicorn 23.0.0 [2025-10-25 13:13:27 +0800] [19396] [INFO] Listening at: http://0.0.0.0:8088 (19396) [2025-10-25 13:13:27 +0800] [19396] [INFO] Using worker: gthread [2025-10-25 13:13:27 +0800] [19410] [INFO] Booting worker with pid: 19410 [2025-10-25 13:13:27 +0800] [19411] [INFO] Booting worker with pid: 19411 [2025-10-25 13:13:27 +0800] [19412] [INFO] Booting worker with pid: 19412 [2025-10-25 13:13:27 +0800] [19413] [INFO] Booting worker with pid: 19413 127.0.0.1 - - [25/Oct/2025:13:13:31 +0800] "GET / HTTP/1.1" 302 223 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36 Edg/141.0.0.0" 127.0.0.1 - - [25/Oct/2025:13:13:31 +0800] "GET /superset/welcome/ HTTP/1.1" 200 5767 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36 Edg/141.0.0.0" 2025-10-25 13:13:31,674:ERROR:flask_appbuilder.models.sqla.filters:Related object for column: owners, value: 1 return Null 2025-10-25 13:13:31,674:WARNING:superset.views.error_handling:Exception Traceback (most recent call last): File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/cursor.py", line 666, in _indexes_for_keys return [self._keymap[key][0] for key in keys] File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/cursor.py", line 666, in <listcomp> return [self._keymap[key][0] for key in keys] KeyError: Column('id', Integer(), table=<ab_permission_view>, primary_key=True, nullable=False, default=Sequence('ab_permission_view_id_seq', metadata=MetaData())) The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask/app.py", line 1484, in full_dispatch_request rv = self.dispatch_request() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask/app.py", line 1469, in dispatch_request return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask_appbuilder/security/decorators.py", line 98, in wraps if current_app.appbuilder.sm.is_item_public( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask_appbuilder/security/manager.py", line 1518, in is_item_public permissions = self.get_public_permissions() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask_appbuilder/security/sqla/manager.py", line 391, in get_public_permissions return role.permissions File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/attributes.py", line 487, in __get__ return self.impl.get(state, dict_) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/attributes.py", line 959, in get value = self._fire_loader_callables(state, key, passive) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/attributes.py", line 995, in _fire_loader_callables return self.callable_(state, passive) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/strategies.py", line 912, in _load_for_state return self._emit_lazyload( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/strategies.py", line 1046, in _emit_lazyload result = session.execute( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 1720, in execute result = compile_state_cls.orm_setup_cursor_result( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/context.py", line 349, in orm_setup_cursor_result return loading.instances(result, querycontext) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 88, in instances with util.safe_reraise(): File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/util/langhelpers.py", line 70, in __exit__ compat.raise_( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/util/compat.py", line 211, in raise_ raise exception File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 69, in instances *[ File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 70, in <listcomp> query_entity.row_processor(context, cursor) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/context.py", line 2631, in row_processor _instance = loading._instance_processor( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 715, in _instance_processor primary_key_getter = result._tuple_getter(pk_cols) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/result.py", line 962, in _tuple_getter return self._metadata._row_as_tuple_getter(keys) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/result.py", line 106, in _row_as_tuple_getter indexes = self._indexes_for_keys(keys) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/cursor.py", line 669, in _indexes_for_keys CursorResultMetaData._key_fallback(self, ke.args[0], ke) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/cursor.py", line 628, in _key_fallback util.raise_( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/util/compat.py", line 211, in raise_ raise exception sqlalchemy.exc.NoSuchColumnError: Could not locate column in row for column 'ab_permission_view.id' 2025-10-25 13:13:31,681:ERROR:superset.views.error_handling:Could not locate column in row for column 'ab_permission_view.id' Traceback (most recent call last): File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/cursor.py", line 666, in _indexes_for_keys return [self._keymap[key][0] for key in keys] File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/cursor.py", line 666, in <listcomp> return [self._keymap[key][0] for key in keys] KeyError: Column('id', Integer(), table=<ab_permission_view>, primary_key=True, nullable=False, default=Sequence('ab_permission_view_id_seq', metadata=MetaData())) The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask/app.py", line 1484, in full_dispatch_request rv = self.dispatch_request() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask/app.py", line 1469, in dispatch_request return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask_appbuilder/security/decorators.py", line 98, in wraps if current_app.appbuilder.sm.is_item_public( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask_appbuilder/security/manager.py", line 1518, in is_item_public permissions = self.get_public_permissions() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask_appbuilder/security/sqla/manager.py", line 391, in get_public_permissions return role.permissions File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/attributes.py", line 487, in __get__ return self.impl.get(state, dict_) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/attributes.py", line 959, in get value = self._fire_loader_callables(state, key, passive) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/attributes.py", line 995, in _fire_loader_callables return self.callable_(state, passive) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/strategies.py", line 912, in _load_for_state return self._emit_lazyload( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/strategies.py", line 1046, in _emit_lazyload result = session.execute( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 1720, in execute result = compile_state_cls.orm_setup_cursor_result( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/context.py", line 349, in orm_setup_cursor_result return loading.instances(result, querycontext) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 88, in instances with util.safe_reraise(): File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/util/langhelpers.py", line 70, in __exit__ compat.raise_( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/util/compat.py", line 211, in raise_ raise exception File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 69, in instances *[ File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 70, in <listcomp> query_entity.row_processor(context, cursor) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/context.py", line 2631, in row_processor _instance = loading._instance_processor( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 715, in _instance_processor primary_key_getter = result._tuple_getter(pk_cols) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/result.py", line 962, in _tuple_getter return self._metadata._row_as_tuple_getter(keys) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/result.py", line 106, in _row_as_tuple_getter indexes = self._indexes_for_keys(keys) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/cursor.py", line 669, in _indexes_for_keys CursorResultMetaData._key_fallback(self, ke.args[0], ke) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/cursor.py", line 628, in _key_fallback util.raise_( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/util/compat.py", line 211, in raise_ raise exception sqlalchemy.exc.NoSuchColumnError: Could not locate column in row for column 'ab_permission_view.id' 127.0.0.1 - - [25/Oct/2025:13:13:31 +0800] "GET /api/v1/saved_query/?q=(filters:!((col:created_by,opr:rel_o_m,value:%271%27)),order_column:changed_on_delta_humanized,order_direction:desc,page:0,page_size:5) HTTP/1.1" 500 264 "http://localhost:8088/superset/welcome/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36 Edg/141.0.0.0" 2025-10-25 13:13:31,689:WARNING:superset.views.error_handling:Exception Traceback (most recent call last): File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/cursor.py", line 666, in _indexes_for_keys return [self._keymap[key][0] for key in keys] File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/cursor.py", line 666, in <listcomp> return [self._keymap[key][0] for key in keys] KeyError: Column('id', Integer(), table=<ab_role>, primary_key=True, nullable=False, default=Sequence('ab_role_id_seq', metadata=MetaData())) The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask/app.py", line 1484, in full_dispatch_request rv = self.dispatch_request() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask/app.py", line 1469, in dispatch_request return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask_appbuilder/security/decorators.py", line 106, in wraps if current_app.appbuilder.sm.has_access( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask_appbuilder/security/manager.py", line 1652, in has_access return self._has_view_access(g.user, permission_name, view_name) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask_appbuilder/security/manager.py", line 1548, in _has_view_access roles = self.get_user_roles(user) File "/home/gapinyc/superset/superset/security/manager.py", line 2429, in get_user_roles return user.roles File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/attributes.py", line 487, in __get__ return self.impl.get(state, dict_) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/attributes.py", line 959, in get value = self._fire_loader_callables(state, key, passive) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/attributes.py", line 995, in _fire_loader_callables return self.callable_(state, passive) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/strategies.py", line 912, in _load_for_state return self._emit_lazyload( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/strategies.py", line 1046, in _emit_lazyload result = session.execute( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 1720, in execute result = compile_state_cls.orm_setup_cursor_result( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/context.py", line 349, in orm_setup_cursor_result return loading.instances(result, querycontext) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 88, in instances with util.safe_reraise(): File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/util/langhelpers.py", line 70, in __exit__ compat.raise_( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/util/compat.py", line 211, in raise_ raise exception File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 69, in instances *[ File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 70, in <listcomp> query_entity.row_processor(context, cursor) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/context.py", line 2631, in row_processor _instance = loading._instance_processor( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 715, in _instance_processor primary_key_getter = result._tuple_getter(pk_cols) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/result.py", line 962, in _tuple_getter return self._metadata._row_as_tuple_getter(keys) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/result.py", line 106, in _row_as_tuple_getter indexes = self._indexes_for_keys(keys) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/cursor.py", line 669, in _indexes_for_keys CursorResultMetaData._key_fallback(self, ke.args[0], ke) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/cursor.py", line 628, in _key_fallback util.raise_( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/util/compat.py", line 211, in raise_ raise exception sqlalchemy.exc.NoSuchColumnError: Could not locate column in row for column 'ab_role.id' 2025-10-25 13:13:31,695:ERROR:superset.views.error_handling:Could not locate column in row for column 'ab_role.id' Traceback (most recent call last): File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/cursor.py", line 666, in _indexes_for_keys return [self._keymap[key][0] for key in keys] File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/cursor.py", line 666, in <listcomp> return [self._keymap[key][0] for key in keys] KeyError: Column('id', Integer(), table=<ab_role>, primary_key=True, nullable=False, default=Sequence('ab_role_id_seq', metadata=MetaData())) The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask/app.py", line 1484, in full_dispatch_request rv = self.dispatch_request() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask/app.py", line 1469, in dispatch_request return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask_appbuilder/security/decorators.py", line 106, in wraps if current_app.appbuilder.sm.has_access( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask_appbuilder/security/manager.py", line 1652, in has_access return self._has_view_access(g.user, permission_name, view_name) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask_appbuilder/security/manager.py", line 1548, in _has_view_access roles = self.get_user_roles(user) File "/home/gapinyc/superset/superset/security/manager.py", line 2429, in get_user_roles return user.roles File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/attributes.py", line 487, in __get__ return self.impl.get(state, dict_) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/attributes.py", line 959, in get value = self._fire_loader_callables(state, key, passive) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/attributes.py", line 995, in _fire_loader_callables return self.callable_(state, passive) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/strategies.py", line 912, in _load_for_state return self._emit_lazyload( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/strategies.py", line 1046, in _emit_lazyload result = session.execute( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 1720, in execute result = compile_state_cls.orm_setup_cursor_result( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/context.py", line 349, in orm_setup_cursor_result return loading.instances(result, querycontext) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 88, in instances with util.safe_reraise(): File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/util/langhelpers.py", line 70, in __exit__ compat.raise_( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/util/compat.py", line 211, in raise_ raise exception File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 69, in instances *[ File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 70, in <listcomp> query_entity.row_processor(context, cursor) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/context.py", line 2631, in row_processor _instance = loading._instance_processor( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 715, in _instance_processor primary_key_getter = result._tuple_getter(pk_cols) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/result.py", line 962, in _tuple_getter return self._metadata._row_as_tuple_getter(keys) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/result.py", line 106, in _row_as_tuple_getter indexes = self._indexes_for_keys(keys) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/cursor.py", line 669, in _indexes_for_keys CursorResultMetaData._key_fallback(self, ke.args[0], ke) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/cursor.py", line 628, in _key_fallback util.raise_( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/util/compat.py", line 211, in raise_ raise exception sqlalchemy.exc.NoSuchColumnError: Could not locate column in row for column 'ab_role.id' 2025-10-25 13:13:31,690:ERROR:superset.views.error_handling:Could not locate column in row for column 'count(*)' Traceback (most recent call last): File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/cursor.py", line 651, in _index_for_key rec = self._keymap[key] KeyError: <sqlalchemy.sql.functions.count at 0x71cc9ac32320; count> The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/home/gapinyc/superset/superset/views/error_handling.py", line 101, in wraps return f(self, *args, **kwargs) File "/home/gapinyc/superset/superset/views/base_api.py", line 487, in get_list_headless duration, response = time_function(super().get_list_headless, **kwargs) File "/home/gapinyc/superset/superset/utils/core.py", line 1369, in time_function response = func(*args, **kwargs) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask_appbuilder/api/__init__.py", line 1632, in get_list_headless count, lst = self.datamodel.query( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask_appbuilder/models/sqla/interface.py", line 501, in query count = self.query_count(query, filters, select_columns) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask_appbuilder/models/sqla/interface.py", line 408, in query_count ).count() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/query.py", line 3176, in count return self._from_self(col).enable_eagerloads(False).scalar() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/query.py", line 2893, in scalar ret = self.one() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/query.py", line 2870, in one return self._iter().one() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/query.py", line 2916, in _iter result = self.session.execute( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 1720, in execute result = compile_state_cls.orm_setup_cursor_result( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/context.py", line 349, in orm_setup_cursor_result return loading.instances(result, querycontext) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 88, in instances with util.safe_reraise(): File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/util/langhelpers.py", line 70, in __exit__ compat.raise_( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/util/compat.py", line 211, in raise_ raise exception File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 69, in instances *[ File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 70, in <listcomp> query_entity.row_processor(context, cursor) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/context.py", line 2911, in row_processor getter = result._getter(column) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/result.py", line 951, in _getter return self._metadata._getter(key, raiseerr) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/result.py", line 98, in _getter index = self._index_for_key(key, raiseerr) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/cursor.py", line 653, in _index_for_key rec = self._key_fallback(key, ke, raiseerr) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/cursor.py", line 628, in _key_fallback util.raise_( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/util/compat.py", line 211, in raise_ raise exception sqlalchemy.exc.NoSuchColumnError: Could not locate column in row for column 'count(*)' 2025-10-25 13:13:31,702:ERROR:root:DBEventLogger failed to log event(s) 2025-10-25 13:13:31,703:WARNING:superset.views.error_handling:Exception Traceback (most recent call last): File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask/app.py", line 1484, in full_dispatch_request rv = self.dispatch_request() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask/app.py", line 1469, in dispatch_request return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask_appbuilder/security/decorators.py", line 98, in wraps if current_app.appbuilder.sm.is_item_public( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask_appbuilder/security/manager.py", line 1518, in is_item_public permissions = self.get_public_permissions() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask_appbuilder/security/sqla/manager.py", line 391, in get_public_permissions return role.permissions File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/attributes.py", line 487, in __get__ return self.impl.get(state, dict_) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/attributes.py", line 959, in get value = self._fire_loader_callables(state, key, passive) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/attributes.py", line 995, in _fire_loader_callables return self.callable_(state, passive) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/strategies.py", line 912, in _load_for_state return self._emit_lazyload( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/strategies.py", line 1046, in _emit_lazyload result = session.execute( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 1720, in execute result = compile_state_cls.orm_setup_cursor_result( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/context.py", line 349, in orm_setup_cursor_result return loading.instances(result, querycontext) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 88, in instances with util.safe_reraise(): File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/util/langhelpers.py", line 70, in __exit__ compat.raise_( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/util/compat.py", line 211, in raise_ raise exception File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 69, in instances *[ File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 70, in <listcomp> query_entity.row_processor(context, cursor) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/context.py", line 2631, in row_processor _instance = loading._instance_processor( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 715, in _instance_processor primary_key_getter = result._tuple_getter(pk_cols) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/result.py", line 962, in _tuple_getter return self._metadata._row_as_tuple_getter(keys) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/result.py", line 106, in _row_as_tuple_getter indexes = self._indexes_for_keys(keys) AttributeError: '_NoResultMetaData' object has no attribute '_indexes_for_keys'. Did you mean: '_index_for_key'? 2025-10-25 13:13:31,704:ERROR:superset.views.error_handling:'_NoResultMetaData' object has no attribute '_indexes_for_keys' Traceback (most recent call last): File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask/app.py", line 1484, in full_dispatch_request rv = self.dispatch_request() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask/app.py", line 1469, in dispatch_request return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask_appbuilder/security/decorators.py", line 98, in wraps if current_app.appbuilder.sm.is_item_public( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask_appbuilder/security/manager.py", line 1518, in is_item_public permissions = self.get_public_permissions() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask_appbuilder/security/sqla/manager.py", line 391, in get_public_permissions return role.permissions File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/attributes.py", line 487, in __get__ return self.impl.get(state, dict_) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/attributes.py", line 959, in get value = self._fire_loader_callables(state, key, passive) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/attributes.py", line 995, in _fire_loader_callables return self.callable_(state, passive) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/strategies.py", line 912, in _load_for_state return self._emit_lazyload( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/strategies.py", line 1046, in _emit_lazyload result = session.execute( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 1720, in execute result = compile_state_cls.orm_setup_cursor_result( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/context.py", line 349, in orm_setup_cursor_result return loading.instances(result, querycontext) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 88, in instances with util.safe_reraise(): File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/util/langhelpers.py", line 70, in __exit__ compat.raise_( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/util/compat.py", line 211, in raise_ raise exception File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 69, in instances *[ File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 70, in <listcomp> query_entity.row_processor(context, cursor) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/context.py", line 2631, in row_processor _instance = loading._instance_processor( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/loading.py", line 715, in _instance_processor primary_key_getter = result._tuple_getter(pk_cols) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/result.py", line 962, in _tuple_getter return self._metadata._row_as_tuple_getter(keys) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/result.py", line 106, in _row_as_tuple_getter indexes = self._indexes_for_keys(keys) AttributeError: '_NoResultMetaData' object has no attribute '_indexes_for_keys'. Did you mean: '_index_for_key'? 2025-10-25 13:13:31,702:ERROR:root:(pymysql.err.OperationalError) (2014, 'Command Out of Sync') (Background on this error at: https://sqlalche.me/e/14/e3q8) Traceback (most recent call last): File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1094, in _commit_impl self.engine.dialect.do_commit(self.connection) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/default.py", line 686, in do_commit dbapi_connection.commit() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/pymysql/connections.py", line 495, in commit self._read_ok_packet() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/pymysql/connections.py", line 467, in _read_ok_packet raise err.OperationalError( pymysql.err.OperationalError: (2014, 'Command Out of Sync') The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/home/gapinyc/superset/superset/utils/log.py", line 407, in log db.session.commit() # pylint: disable=consider-using-transaction File "<string>", line 2, in commit File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 1454, in commit self._transaction.commit(_to_root=self.future) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 839, in commit trans.commit() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 2469, in commit self._do_commit() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 2659, in _do_commit self._connection_commit_impl() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 2630, in _connection_commit_impl self.connection._commit_impl() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1096, in _commit_impl self._handle_dbapi_exception(e, None, None, None, None) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 2134, in _handle_dbapi_exception util.raise_( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/util/compat.py", line 211, in raise_ raise exception File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1094, in _commit_impl self.engine.dialect.do_commit(self.connection) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/default.py", line 686, in do_commit dbapi_connection.commit() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/pymysql/connections.py", line 495, in commit self._read_ok_packet() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/pymysql/connections.py", line 467, in _read_ok_packet raise err.OperationalError( sqlalchemy.exc.OperationalError: (pymysql.err.OperationalError) (2014, 'Command Out of Sync') (Background on this error at: https://sqlalche.me/e/14/e3q8) 127.0.0.1 - - [25/Oct/2025:13:13:31 +0800] "GET /api/v1/dashboard/?q=(filters:!((col:owners,opr:rel_m_m,value:%271%27)),order_column:changed_on_delta_humanized,order_direction:desc,page:0,page_size:5) HTTP/1.1" 500 65 "http://localhost:8088/superset/welcome/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36 Edg/141.0.0.0" [2025-10-25 13:13:31 +0800] [19412] [ERROR] Error handling request /api/v1/chart/?q=(filters:!((col:owners,opr:rel_m_m,value:%271%27)),order_column:changed_on_delta_humanized,order_direction:desc,page:0,page_size:5) Traceback (most recent call last): File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1062, in _rollback_impl self.engine.dialect.do_rollback(self.connection) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/default.py", line 683, in do_rollback dbapi_connection.rollback() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/pymysql/connections.py", line 505, in rollback self._read_ok_packet() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/pymysql/connections.py", line 465, in _read_ok_packet pkt = self._read_packet() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/pymysql/connections.py", line 751, in _read_packet packet_header = self._read_bytes(4) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/pymysql/connections.py", line 805, in _read_bytes raise err.OperationalError( pymysql.err.OperationalError: (2013, 'Lost connection to MySQL server during query') The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/gunicorn/workers/gthread.py", line 281, in handle keepalive = self.handle_request(req, conn) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/gunicorn/workers/gthread.py", line 333, in handle_request respiter = self.wsgi(environ, resp.start_response) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask/app.py", line 2213, in __call__ return self.wsgi_app(environ, start_response) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask/app.py", line 2206, in wsgi_app ctx.pop(error) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask/ctx.py", line 417, in pop app_ctx.pop(exc) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask/ctx.py", line 255, in pop self.app.do_teardown_appcontext(exc) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask/app.py", line 2063, in do_teardown_appcontext self.ensure_sync(func)(exc) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/flask_sqlalchemy/__init__.py", line 899, in shutdown_session self.session.remove() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/scoping.py", line 181, in remove self.registry().close() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 1816, in close self._close_impl(invalidate=False) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 1858, in _close_impl transaction.close(invalidate) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/orm/session.py", line 926, in close transaction.close() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 2426, in close self._do_close() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 2649, in _do_close self._close_impl() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 2635, in _close_impl self._connection_rollback_impl() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 2627, in _connection_rollback_impl self.connection._rollback_impl() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1064, in _rollback_impl self._handle_dbapi_exception(e, None, None, None, None) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 2134, in _handle_dbapi_exception util.raise_( File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/util/compat.py", line 211, in raise_ raise exception File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 1062, in _rollback_impl self.engine.dialect.do_rollback(self.connection) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/default.py", line 683, in do_rollback dbapi_connection.rollback() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/pymysql/connections.py", line 505, in rollback self._read_ok_packet() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/pymysql/connections.py", line 465, in _read_ok_packet pkt = self._read_packet() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/pymysql/connections.py", line 751, in _read_packet packet_header = self._read_bytes(4) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/pymysql/connections.py", line 805, in _read_bytes raise err.OperationalError( sqlalchemy.exc.OperationalError: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query') (Background on this error at: https://sqlalche.me/e/14/e3q8) 127.0.0.1 - - [25/Oct/2025:13:13:31 +0800] "GET /api/v1/chart/?q=(filters:!((col:owners,opr:rel_m_m,value:%271%27)),order_column:changed_on_delta_humanized,order_direction:desc,page:0,page_size:5) HTTP/1.1" 500 0 "-" "-" 2025-10-25 13:13:31,706:ERROR:sqlalchemy.pool.impl.QueuePool:Exception during reset or similar Traceback (most recent call last): File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/pool/base.py", line 763, in _finalize_fairy fairy._reset(pool, transaction_was_reset) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/pool/base.py", line 1038, in _reset pool._dialect.do_rollback(self) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/sqlalchemy/engine/default.py", line 683, in do_rollback dbapi_connection.rollback() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/pymysql/connections.py", line 505, in rollback self._read_ok_packet() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/pymysql/connections.py", line 465, in _read_ok_packet pkt = self._read_packet() File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/pymysql/connections.py", line 751, in _read_packet packet_header = self._read_bytes(4) File "/home/gapinyc/superset/venv/lib/python3.10/site-packages/pymysql/connections.py", line 805, in _read_bytes raise err.OperationalError( pymysql.err.OperationalError: (2013, 'Lost connection to MySQL server during query') 127.0.0.1 - - [25/Oct/2025:13:13:31 +0800] "GET /api/v1/database/?q=(filters:!((col:allow_file_upload,opr:upload_is_enabled,value:!t))) HTTP/1.1" 500 262 "http://localhost:8088/superset/welcome/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36 Edg/141.0.0.0" 127.0.0.1 - - [25/Oct/2025:13:13:31 +0800] "GET /api/v1/log/recent_activity/?q=(distinct:!f,page_size:24) HTTP/1.1" 200 14 "http://localhost:8088/superset/welcome/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36 Edg/141.0.0.0" 127.0.0.1 - - [25/Oct/2025:13:13:31 +0800] "GET /api/v1/database/?q=(filters:!((col:database_name,opr:neq,value:examples))) HTTP/1.1" 200 615 "http://localhost:8088/superset/welcome/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36 Edg/141.0.0.0" 127.0.0.1 - - [25/Oct/2025:13:13:31 +0800] "GET /api/v1/dashboard/?q=(filters:!(),order_column:changed_on_delta_humanized,order_direction:desc,page:0,page_size:5) HTTP/1.1" 200 547 "http://localhost:8088/superset/welcome/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36 Edg/141.0.0.0" 127.0.0.1 - - [25/Oct/2025:13:13:31 +0800] "GET /api/v1/chart/?q=(filters:!(),order_column:changed_on_delta_humanized,order_direction:desc,page:0,page_size:5) HTTP/1.1" 200 797 "http://localhost:8088/superset/welcome/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36 Edg/141.0.0.0" 127.0.0.1 - - [25/Oct/2025:13:13:31 +0800] "GET /api/v1/chart/_info?q=(keys:!(permissions)) HTTP/1.1" 200 74 "http://localhost:8088/superset/welcome/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36 Edg/141.0.0.0" 127.0.0.1 - - [25/Oct/2025:13:13:32 +0800] "GET /api/v1/dashboard/_info?q=(keys:!(permissions)) HTTP/1.1" 200 147 "http://localhost:8088/superset/welcome/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36 Edg/141.0.0.0" 127.0.0.1 - - [25/Oct/2025:13:13:32 +0800] "POST /superset/log/?explode=events HTTP/1.1" 200 9 "http://localhost:8088/superset/welcome/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36 Edg/141.0.0.0"
最新发布
10-26
你已经成功启动了 Apache Superset,并且 `superset_config.py` 的 `SECRET_KEY` 已被正确加载(日志中显示 👉 `Using SECRET_KEY: '1sCjCsfAPMBskPWPSJ0Gja7JvpufVc50vTW04MSiJuzNN3JPlUYL3MR+'`),**服务正在运行,前端页面已可访问**。 但你也看到大量 **500 错误和数据库异常**,特别是: ``` sqlalchemy.exc.NoSuchColumnError: Could not locate column in row for column 'ab_permission_view.id' sqlalchemy.exc.NoSuchColumnError: Could not locate column in row for column 'ab_role.id' pymysql.err.OperationalError: (2014, 'Command Out of Sync') pymysql.err.OperationalError: (2013, 'Lost connection to MySQL server during query') ``` --- ## ✅ 总体状态评估 | 项目 | 状态 | 说明 | |------|------|------| | Superset 启动 | ✅ 成功 | Gunicorn 正常监听 `0.0.0.0:8088` | | SECRET_KEY 加载 | ✅ 正确 | `superset_config.py` 生效 | | 用户登录 | ✅ 可能成功 | 欢迎页 `/superset/welcome/` 返回 200 | | 数据库连接 | ⚠️ 不稳定 | 出现 `Lost connection`, `Command Out of Sync` | | 元数据表结构 | ❌ 缺失或损坏 | `ab_role.id`, `ab_permission_view.id` 找不到 | | 权限系统初始化 | ❌ 未完成 | 导致 `get_public_permissions()` 失败 | --- ## 🛠️ 核心问题诊断与解决方案 ### 🔴 问题 1:`NoSuchColumnError: ab_role.id`, `ab_permission_view.id` #### ❓ 原因: - 这些是 Flask AppBuilder(FAB)用于权限管理的核心表。 - 表存在但 **字段缺失、类型不匹配、或 ORM 映射错乱** - 最常见原因是:**没有运行 `superset init` 或 `superset db upgrade` 不完整** #### ✅ 解决方案: > 💥 必须先确保数据库升级完成! ```bash # 1. 升级数据库 schema(关键!) superset db upgrade # 2. 初始化角色、权限、视图菜单等 superset init ``` 📌 如果 `superset db upgrade` 报错,请先修复数据库连接问题(见下文)。 --- ### 🔴 问题 2:`pymysql.err.OperationalError: (2014, 'Command Out of Sync')` #### ❓ 原因: - 客户端与 MySQL 服务器的协议状态不同步 - 常见于: - 使用了旧版 `PyMySQL` - 多线程并发查询时未正确管理连接 - 查询未结束就关闭连接 - MySQL 配置超时过短(如 `wait_timeout=30`) #### ✅ 解决方案: ##### (1)升级 PyMySQL 和 SQLAlchemy ```bash pip install --upgrade pymysql sqlalchemy flask-sqlalchemy ``` ##### (2)在 `superset_config.py` 中添加连接池配置 ```python # superset_config.py import os SECRET_KEY = os.environ.get('SECRET_KEY', '1sCjCsfAPMBskPWPSJ0Gja7JvpufVc50vTW04MSiJuzNN3JPlUYL3MR+') # MySQL 数据库 URI 示例 SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://user:password@localhost/superset?charset=utf8mb4' # 关键:优化连接池行为 SQLALCHEMY_ENGINE_OPTIONS = { "pool_pre_ping": True, # 每次获取连接前先 ping 一次 "pool_recycle": 3600, # 每隔一小时重建连接,避免超时 "pool_timeout": 30, "max_overflow": 10, "connect_args": {"connect_timeout": 10}, } ``` > `pool_pre_ping=True` 是解决 “Command Out of Sync” 和 “Lost connection” 的最有效手段! --- ### 🔴 问题 3:`'_NoResultMetaData' object has no attribute '_indexes_for_keys'` #### ❓ 原因: - SQLAlchemy 查询返回了一个空结果集或无效游标 - ORM 尝试从不存在的结果中提取列信息 - 通常是由于前面的 SQL 查询失败导致后续逻辑崩溃 #### ✅ 解决方案: - 优先解决数据库连接和表结构问题 - 确保 `ab_role`, `ab_permission_view` 等表存在且有主键 `id` --- ### 🔴 问题 4:`DBEventLogger failed to log event(s)` + `OperationalError` 提交失败 这是副作用错误。只要前面的连接问题解决,这个日志记录功能就会恢复。 --- ## ✅ 推荐操作流程(立即执行) ### 🔧 Step 1:确认并修复 `superset_config.py` 确保内容如下(根据你的实际情况修改): ```python # ~/superset/superset_config.py import os SECRET_KEY = '1sCjCsfAPMBskPWPSJ0Gja7JvpufVc50vTW04MSiJuzNN3JPlUYL3MR+' # 替换为你的 MySQL 地址 SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://superset_user:your_password@localhost/superset_db?charset=utf8mb4' SQLALCHEMY_ENGINE_OPTIONS = { "pool_pre_ping": True, "pool_recycle": 3600, "pool_timeout": 30, "max_overflow": 10, } ``` > 📌 注意:不要用 SQLite 在生产环境!建议使用 MySQL 或 PostgreSQL。 --- ### 🔧 Step 2:运行数据库迁移 ```bash superset db upgrade ``` 预期输出应包含类似: ``` INFO [alembic.runtime.migration] Running upgrade -> abc123def456, add ab_role table INFO [alembic.runtime.migration] Running upgrade abc123def456 -> def456ghi789, add ab_permission_view.id ... INFO [superset] Upgrade done. ``` 如果报错,请检查: - MySQL 是否运行? - 用户是否有建表权限? - 数据库名是否存在? --- ### 🔧 Step 3:初始化权限系统 ```bash superset init ``` 输出示例: ``` Recognized Database Authentications. Admin user admin created Inserting roles as bulk insert is more efficient Creating default roles ... Done ``` 这会创建: - `ab_role`: Admin, Alpha, Gamma, Public - `ab_permission_view`, `ab_view_menu`, `ab_permission` 等权限映射表 - 默认用户角色关系 --- ### 🔧 Step 4:重启 Gunicorn 停止当前进程(`Ctrl+C`),然后重新启动: ```bash gunicorn \ --bind 0.0.0.0:8088 \ --workers 4 \ --worker-class gthread \ --threads 4 \ --timeout 120 \ --max-requests 1000 \ --max-requests-jitter 100 \ --preload \ --access-logfile - \ --error-logfile - \ "superset.app:create_app()" ``` 刷新浏览器页面 → 应该不再出现 500 错误! --- ## ✅ 验证是否修复成功 打开浏览器开发者工具(F12),查看以下 API 是否返回 `200 OK`: | URL | 功能 | |-----|------| | `/api/v1/dashboard/` | 仪表板列表 | | `/api/v1/chart/` | 图表列表 | | `/api/v1/database/` | 数据源列表 | | `/login/` | 登录页 | 如果都能正常返回 JSON 数据,说明系统已恢复正常。 --- ## 🧰 附加建议 ### 1. 使用 `.env` + `python-dotenv` 自动加载配置 安装依赖: ```bash pip install python-dotenv ``` 修改 `superset_config.py`: ```python from dotenv import load_dotenv import os load_dotenv() SECRET_KEY = os.getenv('SECRET_KEY') SQLALCHEMY_DATABASE_URI = os.getenv('DATABASE_URL') ``` `.env` 文件: ```env SECRET_KEY=1sCjCsfAPMBskPWPSJ0Gja7JvpufVc50vTW04MSiJuzNN3JPlUYL3MR+ DATABASE_URL=mysql+pymysql://user:pass@localhost/superset_db?charset=utf8mb4 ``` --- ### 2. 查看数据库中是否存在关键表 进入 MySQL: ```sql USE superset_db; SHOW TABLES LIKE 'ab_%'; -- 应该能看到: -- ab_role -- ab_permission -- ab_permission_view -- ab_view_menu -- ab_user_role ``` 检查 `ab_role` 是否有数据: ```sql SELECT * FROM ab_role; ``` 应该至少有: - Admin - Alpha - Gamma - Public ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值