eosphoros-ai / DB-GPT

AI Native Data App Development framework with AWEL(Agentic Workflow Expression Language) and Agents
http://docs.dbgpt.cn
MIT License
13.61k stars 1.82k forks source link

执行python dbgpt/app/dbgpt_server.py,报错:sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) index idx_app_code already exists #1865

Closed huicewang closed 2 months ago

huicewang commented 2 months ago

Search before asking

Operating system information

Windows

Python version information

=3.11

DB-GPT version

main

Related scenes

Installation Information

Device information

cpu

Models information

deepseek

What happened

第一次执行启动命令报错如下:python dbgpt/app/dbgpt_server.py

Traceback (most recent call last): File "C:\Users\86134\Desktop\workspace\AI\ai_native_data_app\venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1970, in _exec_single_context self.dialect.do_execute( File "C:\Users\86134\Desktop\workspace\AI\ai_native_data_app\venv\Lib\site-packages\sqlalchemy\engine\default.py", line 924, in do_execute cursor.execute(statement, parameters) sqlite3.OperationalError: index idx_app_code already exists

The above exception was the direct cause of the following exception:

Traceback (most recent call last): File "C:\Users\86134\Desktop\workspace\AI\ai_native_data_app\dbgpt\app\dbgpt_server.py", line 291, in run_webserver() File "C:\Users\86134\Desktop\workspace\AI\ai_native_data_app\dbgpt\app\dbgpt_server.py", line 277, in run_webserver param = initialize_app(param) ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\86134\Desktop\workspace\AI\ai_native_data_app\dbgpt\app\dbgpt_server.py", line 184, in initialize_app _migration_db_storage(param) File "c:\users\86134\desktop\workspace\ai\ai_native_data_app\dbgpt\app\base.py", line 86, in _migration_db_storage _ddl_init_and_upgrade(default_meta_data_path, param.disable_alembic_upgrade) File "c:\users\86134\desktop\workspace\ai\ai_native_data_app\dbgpt\util_db_migration_utils.py", line 366, in _ddl_init_and_upgrade upgrade_database(alembic_cfg, db.engine) File "c:\users\86134\desktop\workspace\ai\ai_native_data_app\dbgpt\util_db_migration_utils.py", line 113, in upgrade_database command.upgrade(alembic_cfg, target_version) File "C:\Users\86134\Desktop\workspace\AI\ai_native_data_app\venv\Lib\site-packages\alembic\command.py", line 399, in upgrade script.run_env() File "C:\Users\86134\Desktop\workspace\AI\ai_native_data_app\venv\Lib\site-packages\alembic\script\base.py", line 578, in run_env util.load_python_file(self.dir, "env.py") File "C:\Users\86134\Desktop\workspace\AI\ai_native_data_app\venv\Lib\site-packages\alembic\util\pyfiles.py", line 93, in load_python_file module = load_module_py(module_id, path) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\86134\Desktop\workspace\AI\ai_native_data_app\venv\Lib\site-packages\alembic\util\pyfiles.py", line 109, in load_module_py spec.loader.exec_module(module) # type: ignore ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "", line 940, in exec_module File "", line 241, in _call_with_frames_removed File "c:\users\86134\desktop\workspace\ai\ai_native_data_app\pilot\meta_data\alembic\env.py", line 75, in run_migrations_online() File "c:\users\86134\desktop\workspace\ai\ai_native_data_app\pilot\meta_data\alembic\env.py", line 69, in run_migrations_online context.run_migrations() File "", line 8, in run_migrations File "C:\Users\86134\Desktop\workspace\AI\ai_native_data_app\venv\Lib\site-packages\alembic\runtime\environment.py", line 937, in run_migrations self.get_context().run_migrations(kw) File "C:\Users\86134\Desktop\workspace\AI\ai_native_data_app\venv\Lib\site-packages\alembic\runtime\migration.py", line 624, in run_migrations step.migration_fn(kw) File "C:\Users\86134\Desktop\workspace\AI\ai_native_data_app\pilot\meta_data\alembic\versions\9eaeb8ddfd61_new_migration.py", line 171, in upgrade with op.batch_alter_table('user_recent_apps', schema=None) as batch_op: File "C:\Users\86134\AppData\Local\Programs\Python\Python311\Lib\contextlib.py", line 144, in exit
next(self.gen) File "C:\Users\86134\Desktop\workspace\AI\ai_native_data_app\venv\Lib\site-packages\alembic\operations\base.py", line 375, in batch_alter_table impl.flush() File "C:\Users\86134\Desktop\workspace\AI\ai_native_data_app\venv\Lib\site-packages\alembic\operations\batch.py", line 113, in flush fn(*arg, kw) File "C:\Users\86134\Desktop\workspace\AI\ai_native_data_app\venv\Lib\site-packages\alembic\ddl\impl.py", line 383, in create_index self._exec(schema.CreateIndex(index, kw)) File "C:\Users\86134\Desktop\workspace\AI\ai_native_data_app\venv\Lib\site-packages\alembic\ddl\impl.py", line 193, in _exec return conn.execute( # type: ignore[call-overload] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\86134\Desktop\workspace\AI\ai_native_data_app\venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1421, in execute return meth( ^^^^^ File "C:\Users\86134\Desktop\workspace\AI\ai_native_data_app\venv\Lib\site-packages\sqlalchemy\sql\ddl.py", line 180, in _execute_on_connection return connection._execute_ddl( ^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\86134\Desktop\workspace\AI\ai_native_data_app\venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1532, in _execute_ddl ret = self._execute_context( ^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\86134\Desktop\workspace\AI\ai_native_data_app\venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1849, in _execute_context return self._exec_single_context( ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\86134\Desktop\workspace\AI\ai_native_data_app\venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1989, in _exec_single_context self._handle_dbapi_exception( File "C:\Users\86134\Desktop\workspace\AI\ai_native_data_app\venv\Lib\site-packages\sqlalchemy\engine\base.py", line 2356, in _handle_dbapi_exception raise sqlalchemy_exception.with_traceback(exc_info[2]) from e File "C:\Users\86134\Desktop\workspace\AI\ai_native_data_app\venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1970, in _exec_single_context self.dialect.do_execute( File "C:\Users\86134\Desktop\workspace\AI\ai_native_data_app\venv\Lib\site-packages\sqlalchemy\engine\default.py", line 924, in do_execute cursor.execute(statement, parameters) sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) index idx_app_code already exists [SQL: CREATE INDEX idx_app_code ON user_recent_apps (app_code)] (Background on this error at: https://sqlalche.me/e/20/e3q8)

What you expected to happen

成功启动

How to reproduce

启动脚本python dbgpt/app/dbgpt_server.py

Additional context

No response

Are you willing to submit PR?

huicewang commented 2 months ago

最新版本

yungongzi commented 2 months ago

我也遇到同样问题。 python版本:3.11 使用通义代理模型

riverhell commented 2 months ago

Same bug, waiting for reply

riverhell commented 2 months ago

Checkout tag v0.5.10 works for me, maybe there is some bugs within main branch

yungongzi commented 2 months ago

更改mysql数据库, 先执行 mysql -h127.0.0.1 -uroot -p{your_password} < ./assets/schema/dbgpt.sql 再执行 mysql -h127.0.0.1 -uroot -p{your_password} < ./assets/schema/upgrade/v0_6_0/upgrade_to_v0.6.0.sql 可正常运行

可能存在检查机制,sqlite某个表的索引已创建了

fangyinc commented 2 months ago

Thank you for trying the latest features. This problem will be fixed in the next few days. If you don’t want to wait, you can try version v0.5.10.