After upgrading from version 1.8 to 1.9, the database encountered numerous errors, rendering the business operations non-functional.
#26665 opened on Oct 9, 2025
Description
Self Checks
- I have read the Contributing Guide and Language Policy.
- This is only for bug report, if you would like to ask a question, please head to Discussions.
- I have searched for existing issues search for existing issues, including closed ones.
- I confirm that I am using English to submit this report, otherwise it will be closed.
- 【中文用户 & Non English User】请使用英语提交,否则会被关闭 :)
- Please do not modify this template :) and fill in all the required fields.
Dify version
1.9.0
Cloud or Self Hosted
Self Hosted (Docker)
Steps to reproduce
After upgrading from version 1.8.1 to 1.9.0, the database encountered numerous errors, rendering the business operations non-functional.
After the 1.9.0 startup is completed, proceed with data conversion
docker exec -it docker-api-1 uv run flask transform-datasource-credentials 2025-10-09 06:02:49.202 INFO [MainThread] [_client.py:1038] - HTTP Request: POST https://marketplace.dify.ai/api/v1/plugins/batch "HTTP/1.1 200 OK" 2025-10-09 06:02:50.207 INFO [MainThread] [_client.py:1038] - HTTP Request: POST https://marketplace.dify.ai/api/v1/plugins/batch "HTTP/1.1 200 OK" 2025-10-09 06:02:53.220 INFO [MainThread] [_client.py:1038] - HTTP Request: POST https://marketplace.dify.ai/api/v1/plugins/batch "HTTP/1.1 200 OK" Transforming notion successfully. deal_notion_count: 0 Transforming firecrawl successfully. deal_firecrawl_count: 0 Transforming jina successfully. deal_jina_count: 0
It seems to be normal, but after entering the dify console, an error is reported as follows. How can I solve this problem? Please provide detailed steps, thank you:
[SQL: SELECT datasets.id, datasets.tenant_id, datasets.name, datasets.description, datasets.provider, datasets.permission, datasets.data_source_type, datasets.indexing_technique, datasets.index_struct, datasets.created_by, datasets.created_at, datasets.updated_by, datasets.updated_at, datasets.embedding_model, datasets.embedding_model_provider, datasets.keyword_number, datasets.collection_binding_id, datasets.retrieval_model, datasets.built_in_field_enabled, datasets.icon_info, datasets.runtime_mode, datasets.pipeline_id, datasets.chunk_structure, datasets.enable_api FROM datasets WHERE datasets.tenant_id = %(tenant_id_1)s::UUID AND (datasets.permission = %(permission_1)s OR datasets.permission = %(permission_2)s AND datasets.created_by = %(created_by_1)s::UUID) ORDER BY datasets.created_at DESC LIMIT %(param_1)s OFFSET %(param_2)s] [parameters: {'tenant_id_1': 'e48ce911-7f13-4a88-8086-8998638e1f7b', 'permission_1': <DatasetPermissionEnum.ALL_TEAM: 'all_team_members'>, 'permission_2': <DatasetPermissionEnum.ONLY_ME: 'only_me'>, 'created_by_1': '0a3468b7-4cf9-412d-8681-35ea1cfb8624', 'param_1': 30, 'param_2': 0}] (Background on this error at: https://sqlalche.me/e/20/f405) 2025-10-09 06:00:08.875 ERROR [Dummy-16] [app.py:875] - Exception on /console/api/datasets [GET] Traceback (most recent call last): File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 1967, in _exec_single_context self.dialect.do_execute( File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/default.py", line 951, in do_execute cursor.execute(statement, parameters) psycopg2.errors.UndefinedColumn: column datasets.keyword_number does not exist LINE 1: ...bedding_model, datasets.embedding_model_provider, datasets.k... ^
The above exception was the direct cause of the following exception:
Traceback (most recent call last): File "/app/api/.venv/lib/python3.12/site-packages/flask/app.py", line 917, in full_dispatch_request rv = self.dispatch_request() ^^^^^^^^^^^^^^^^^^^^^^^ File "/app/api/.venv/lib/python3.12/site-packages/flask/app.py", line 902, in dispatch_request return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) # type: ignore[no-any-return] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/app/api/.venv/lib/python3.12/site-packages/flask_restx/api.py", line 402, in wrapper resp = resource(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/app/api/.venv/lib/python3.12/site-packages/flask/views.py", line 110, in view return current_app.ensure_sync(self.dispatch_request)(**kwargs) # type: ignore[no-any-return] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/app/api/.venv/lib/python3.12/site-packages/flask_restx/resource.py", line 41, in dispatch_request resp = meth(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^ File "/app/api/controllers/console/wraps.py", line 215, in decorated return view(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^ File "/app/api/libs/login.py", line 62, in decorated_view return current_app.ensure_sync(func)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/app/api/controllers/console/wraps.py", line 37, in decorated return view(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^ File "/app/api/controllers/console/wraps.py", line 227, in decorated return view(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^ File "/app/api/controllers/console/datasets/datasets.py", line 81, in get datasets, total = DatasetService.get_datasets( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/app/api/services/dataset_service.py", line 160, in get_datasets datasets = db.paginate(select=query, page=page, per_page=per_page, max_per_page=100, error_out=False) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/app/api/.venv/lib/python3.12/site-packages/flask_sqlalchemy/extension.py", line 839, in paginate return SelectPagination( ^^^^^^^^^^^^^^^^^ File "/app/api/.venv/lib/python3.12/site-packages/flask_sqlalchemy/pagination.py", line 72, in init items = self._query_items() ^^^^^^^^^^^^^^^^^^^ File "/app/api/.venv/lib/python3.12/site-packages/flask_sqlalchemy/pagination.py", line 339, in _query_items return list(session.execute(select).unique().scalars()) ^^^^^^^^^^^^^^^^^^^^^^^ File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/orm/session.py", line 2365, in execute return self._execute_internal( ^^^^^^^^^^^^^^^^^^^^^^^ File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/orm/session.py", line 2251, in _execute_internal result: Result[Any] = compile_state_cls.orm_execute_statement( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/orm/context.py", line 306, in orm_execute_statement result = conn.execute( ^^^^^^^^^^^^^ File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 1419, in execute return meth( ^^^^^ File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/sql/elements.py", line 526, in _execute_on_connection return connection._execute_clauseelement( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 1641, in _execute_clauseelement ret = self._execute_context( ^^^^^^^^^^^^^^^^^^^^^^ File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 1846, in _execute_context return self._exec_single_context( ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 1986, in _exec_single_context self._handle_dbapi_exception( File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 2355, in _handle_dbapi_exception raise sqlalchemy_exception.with_traceback(exc_info[2]) from e File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 1967, in _exec_single_context self.dialect.do_execute( File "/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/default.py", line 951, in do_execute cursor.execute(statement, parameters) sqlalchemy.exc.ProgrammingError: (psycopg2.errors.UndefinedColumn) column datasets.keyword_number does not exist LINE 1: ...bedding_model, datasets.embedding_model_provider, datasets.k... ^
[SQL: SELECT datasets.id, datasets.tenant_id, datasets.name, datasets.description, datasets.provider, datasets.permission, datasets.data_source_type, datasets.indexing_technique, datasets.index_struct, datasets.created_by, datasets.created_at, datasets.updated_by, datasets.updated_at, datasets.embedding_model, datasets.embedding_model_provider, datasets.keyword_number, datasets.collection_binding_id, datasets.retrieval_model, datasets.built_in_field_enabled, datasets.icon_info, datasets.runtime_mode, datasets.pipeline_id, datasets.chunk_structure, datasets.enable_api FROM datasets WHERE datasets.tenant_id = %(tenant_id_1)s::UUID AND (datasets.permission = %(permission_1)s OR datasets.permission = %(permission_2)s AND datasets.created_by = %(created_by_1)s::UUID) ORDER BY datasets.created_at DESC LIMIT %(param_1)s OFFSET %(param_2)s] [parameters: {'tenant_id_1': 'e48ce911-7f13-4a88-8086-8998638e1f7b', 'permission_1': <DatasetPermissionEnum.ALL_TEAM: 'all_team_members'>, 'permission_2': <DatasetPermissionEnum.ONLY_ME: 'only_me'>, 'created_by_1': '0a3468b7-4cf9-412d-8681-35ea1cfb8624', 'param_1': 30, 'param_2': 0}] (Background on this error at: https://sqlalche.me/e/20/f405)
✔️ Expected Behavior
Handle table structure exceptions
❌ Actual Behavior
No response