我使用了一个外部seekdb作为元数据库和向量数据库,部署时报错如下2026-01-20 08:45:16.496 INFO [MainThread] [strategy.py:161] - Task schedule.workflow_schedule_task.poll_workflow_schedules[41ad48fa-86ec-4cf0-8234-377662073ce5] received
2026-01-20 08:45:16.539 ERROR [Dummy-5] [trace.py:267] f09508577c1758ca8c361351a3612490 - Task schedule.workflow_schedule_task.poll_workflow_schedules[41ad48fa-86ec-4cf0-8234-377662073ce5] raised unexpected: ProgrammingError(‘(pymysql.err.ProgrammingError) (1146, “Table \‘test.workflow_schedule_plans\’ doesn\'t exist”)’)
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)
File “/app/api/.venv/lib/python3.12/site-packages/pymysql/cursors.py”, line 153, in execute
result = self._query(query)
^^^^^^^^^^^^^^^^^^
File “/app/api/.venv/lib/python3.12/site-packages/pymysql/cursors.py”, line 322, in _query
conn.query(q)
File “/app/api/.venv/lib/python3.12/site-packages/pymysql/connections.py”, line 575, in query
self._affected_rows = self._read_query_result(unbuffered=unbuffered)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/app/api/.venv/lib/python3.12/site-packages/pymysql/connections.py”, line 826, in _read_query_result
result.read()
File “/app/api/.venv/lib/python3.12/site-packages/pymysql/connections.py”, line 1203, in read
first_packet = self.connection._read_packet()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/app/api/.venv/lib/python3.12/site-packages/pymysql/connections.py”, line 782, in _read_packet
packet.raise_for_error()
File “/app/api/.venv/lib/python3.12/site-packages/pymysql/protocol.py”, line 219, in raise_for_error
err.raise_mysql_exception(self._data)
File “/app/api/.venv/lib/python3.12/site-packages/pymysql/err.py”, line 150, in raise_mysql_exception
raise errorclass(errno, errval)
pymysql.err.ProgrammingError: (1146, “Table ‘test.workflow_schedule_plans’ doesn’t exist”)
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/celery/app/trace.py”, line 453, in trace_task
R = retval = fun(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^
File “/app/api/extensions/ext_celery.py”, line 54, in _call_
return self.run(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^
File “/app/api/schedule/workflow_schedule_task.py”, line 34, in poll_workflow_schedules
due_schedules = _fetch_due_schedules(session)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/app/api/schedule/workflow_schedule_task.py”, line 68, in _fetch_due_schedules
due_schedules = session.scalars(
^^^^^^^^^^^^^^^^
File “/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/orm/session.py”, line 2459, in scalars
return self._execute_internal(
^^^^^^^^^^^^^^^^^^^^^^^
File “/app/api/.venv/lib/python3.12/site-packages/sqlalchemy/orm/session.py”, line 2249, 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)
File “/app/api/.venv/lib/python3.12/site-packages/pymysql/cursors.py”, line 153, in execute
result = self._query(query)
^^^^^^^^^^^^^^^^^^
File “/app/api/.venv/lib/python3.12/site-packages/pymysql/cursors.py”, line 322, in _query
conn.query(q)
File “/app/api/.venv/lib/python3.12/site-packages/pymysql/connections.py”, line 575, in query
self._affected_rows = self._read_query_result(unbuffered=unbuffered)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/app/api/.venv/lib/python3.12/site-packages/pymysql/connections.py”, line 826, in _read_query_result
result.read()
File “/app/api/.venv/lib/python3.12/site-packages/pymysql/connections.py”, line 1203, in read
first_packet = self.connection._read_packet()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/app/api/.venv/lib/python3.12/site-packages/pymysql/connections.py”, line 782, in _read_packet
packet.raise_for_error()
File “/app/api/.venv/lib/python3.12/site-packages/pymysql/protocol.py”, line 219, in raise_for_error
err.raise_mysql_exception(self._data)
File “/app/api/.venv/lib/python3.12/site-packages/pymysql/err.py”, line 150, in raise_mysql_exception
raise errorclass(errno, errval)
sqlalchemy.exc.ProgrammingError: (pymysql.err.ProgrammingError) (1146, “Table ‘test.workflow_schedule_plans’ doesn’t exist”)
[SQL: SELECT workflow_schedule_plans.id, workflow_schedule_plans.app_id, workflow_schedule_plans.node_id, workflow_schedule_plans.tenant_id, workflow_schedule_plans.cron_expression, workflow_schedule_plans.timezone, workflow_schedule_plans.next_run_at, workflow_schedule_plans.created_at, workflow_schedule_plans.updated_at
FROM workflow_schedule_plans INNER JOIN app_triggers ON app_triggers.app_id = workflow_schedule_plans.app_id AND app_triggers.node_id = workflow_schedule_plans.node_id AND app_triggers.trigger_type = %(trigger_type_1)s
WHERE workflow_schedule_plans.next_run_at <= %(next_run_at_1)s AND workflow_schedule_plans.next_run_at IS NOT NULL AND app_triggers.status = %(status_1)s ORDER BY workflow_schedule_plans.next_run_at ASC
LIMIT %(param_1)s FOR UPDATE SKIP LOCKED]
[parameters: {‘trigger_type_1’: ‘trigger-schedule’, ‘next_run_at_1’: datetime.datetime(2026, 1, 20, 8, 45, 16, 497796), ‘status_1’: ‘enabled’, ‘param_1’: 100}]
(Background on this error at: Error Messages — SQLAlchemy 2.0 Documentation)
我从seekdb上已经看到了dify的连接,这里的表不应该是自动创建的吗?

