nonebot | Error when running CalledAPI hook. Running cancelled!
Traceback (most recent call last):
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\engine\base.py", line 1964, in _exec_single_context
self.dialect.do_execute(
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\engine\default.py", line 748, in do_execute
cursor.execute(statement, parameters)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\dialects\sqlite\aiosqlite.py", line 113, in execute
self._adapt_connection._handle_exception(error)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\dialects\sqlite\aiosqlite.py", line 254, in _handleexception
raise error
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\dialects\sqlite\aiosqlite.py", line 95, in execute
self.await(_cursor.execute(operation, parameters))
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\util_concurrency_py3k.py", line 102, in await_only
return current.driver.switch(awaitable) # type: ignore[no-any-return]
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\util_concurrency_py3k.py", line 160, in greenlet_spawn
value = await result
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\aiosqlite\cursor.py", line 37, in execute
await self._execute(self._cursor.execute, sql, parameters)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\aiosqlite\cursor.py", line 31, in _execute
return await self._conn._execute(fn, *args, **kwargs)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\aiosqlite\core.py", line 129, in _execute
return await future
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\aiosqlite\core.py", line 102, in run
result = function()
sqlite3.IntegrityError: UNIQUE constraint failed: nonebot_plugin_follow_withdraw_followmessage.message_id
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "G:\NJS-Bot\bot.py", line 41, in
nonebot.run(app="mp_main__:app", access_log=False)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot__init__.py", line 309, in run
get_driver().run(*args, *kwargs)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\drivers\fastapi.py", line 198, in run
uvicorn.run(
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\uvicorn\main.py", line 578, in run
server.run()
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\uvicorn\server.py", line 61, in run
return asyncio.run(self.serve(sockets=sockets))
File "C:\software\Python310\lib\asyncio\runners.py", line 44, in run
return loop.run_until_complete(main)
File "C:\software\Python310\lib\asyncio\base_events.py", line 636, in run_until_complete
self.run_forever()
File "C:\software\Python310\lib\asyncio\windows_events.py", line 321, in run_forever
super().run_forever()
File "C:\software\Python310\lib\asyncio\base_events.py", line 603, in run_forever
self._run_once()
File "C:\software\Python310\lib\asyncio\base_events.py", line 1909, in _run_once
handle._run()
File "C:\software\Python310\lib\asyncio\events.py", line 80, in _run
self._context.run(self._callback, self._args)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\message.py", line 467, in check_and_run_matcher
await _run_matcher(
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\message.py", line 419, in _run_matcher
await matcher.run(bot, event, state, stack, dependency_cache)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\internal\matcher\matcher.py", line 753, in run
await self.simple_run(bot, event, state, stack, dependency_cache)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\internal\matcher\matcher.py", line 728, in simple_run
await handler(
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\dependencies\init.py", line 108, in call
return await cast(Callable[..., Awaitable[R]], self.call)(**values)
File "G:\NJS-Bot\src\plugins\nonebot_plugin_gpt3\init.py", line 328, in _
await matcher.send(resp, at_sender=True)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\internal\matcher\matcher.py", line 466, in send
return await bot.send(event=event, message=_message, **kwargs)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot_plugin_guild_patch\init.py", line 30, in patched_send
return await original_send(self, event, message, **kwargs)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\adapters\onebot\v11\bot.py", line 220, in send
return await self.class__.send_handler(self, event, message, kwargs)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\adapters\onebot\v11\bot.py", line 174, in send
return await bot.send_msg(params)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\internal\adapter\bot.py", line 107, in call_api
await asyncio.gather(coros)
File "G:\NJS-Bot\src\plugins\nonebot_plugin_follow_withdraw__init__.py", line 87, in handle_save_message
await save_message(adapter_name, origin_message, message)
File "G:\NJS-Bot\src\plugins\nonebot_plugin_follow_withdraw\model.py", line 81, in save_message
await session.commit()
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\ext\asyncio\session.py", line 810, in commit
await greenlet_spawn(self.sync_session.commit)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\util_concurrency_py3k.py", line 167, in greenlet_spawn
result = context.switch(value)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\orm\session.py", line 1903, in commit
trans.commit(_to_root=True)
File "", line 2, in commit
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\orm\state_changes.py", line 137, in _go
ret_value = fn(self, arg, kw)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\orm\session.py", line 1218, in commit
self._prepare_impl()
File "", line 2, in _prepare_impl
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\orm\state_changes.py", line 137, in _go
ret_value = fn(self, *arg, *kw)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\orm\session.py", line 1193, in _prepare_impl
self.session.flush()
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\orm\session.py", line 4155, in flush
self._flush(objects)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\orm\session.py", line 4291, in _flush
with util.safe_reraise():
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\util\langhelpers.py", line 147, in exit
raise exc_value.with_traceback(exc_tb)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\orm\session.py", line 4252, in _flush
flush_context.execute()
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\orm\unitofwork.py", line 467, in execute
rec.execute(self)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\orm\unitofwork.py", line 644, in execute
util.preloaded.orm_persistence.save_obj(
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\orm\persistence.py", line 93, in save_obj
_emit_insert_statements(
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\orm\persistence.py", line 1020, in _emit_insert_statements
result = connection.execute(
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\engine\base.py", line 1414, in execute
return meth(
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\sql\elements.py", line 486, in _execute_on_connection
return connection._execute_clauseelement(
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\engine\base.py", line 1638, in _execute_clauseelement
ret = self._execute_context(
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\engine\base.py", line 1842, in _execute_context
return self._exec_single_context(
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\engine\base.py", line 1983, in _exec_single_context
self._handle_dbapi_exception(
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\engine\base.py", line 2326, in _handle_dbapi_exception
raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\engine\base.py", line 1964, in _exec_single_context
self.dialect.do_execute(
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\engine\default.py", line 748, in do_execute
cursor.execute(statement, parameters)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\dialects\sqlite\aiosqlite.py", line 113, in execute
self._adapt_connection._handle_exception(error)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\dialects\sqlite\aiosqlite.py", line 254, in _handleexception
raise error
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\dialects\sqlite\aiosqlite.py", line 95, in execute
self.await(_cursor.execute(operation, parameters))
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\util_concurrency_py3k.py", line 102, in await_only
return current.driver.switch(awaitable) # type: ignore[no-any-return]
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\util_concurrency_py3k.py", line 160, in greenlet_spawn
value = await result
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\aiosqlite\cursor.py", line 37, in execute
await self._execute(self._cursor.execute, sql, parameters)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\aiosqlite\cursor.py", line 31, in _execute
return await self._conn._execute(fn, args, kwargs)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\aiosqlite\core.py", line 129, in _execute
return await future
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\aiosqlite\core.py", line 102, in run
result = function()
sqlalchemy.exc.IntegrityError: (sqlite3.IntegrityError) UNIQUE constraint failed: nonebot_plugin_follow_withdraw_followmessage.message_id
[SQL: INSERT INTO nonebot_plugin_follow_withdraw_followmessage (message_id, adapter_name, channel_id, origin_message_id) VALUES (?, ?, ?, ?)]
[parameters: ('2048089962', 'OneBot V11', None, '1345869578')]
(Background on this error at: https://sqlalche.me/e/20/gkpj)
用的是NJSbot,作者整合了这个插件,报错信息如下:
nonebot | Error when running CalledAPI hook. Running cancelled! Traceback (most recent call last): File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\engine\base.py", line 1964, in _exec_single_context self.dialect.do_execute( File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\engine\default.py", line 748, in do_execute cursor.execute(statement, parameters) File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\dialects\sqlite\aiosqlite.py", line 113, in execute self._adapt_connection._handle_exception(error) File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\dialects\sqlite\aiosqlite.py", line 254, in _handleexception raise error File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\dialects\sqlite\aiosqlite.py", line 95, in execute self.await(_cursor.execute(operation, parameters)) File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\util_concurrency_py3k.py", line 102, in await_only return current.driver.switch(awaitable) # type: ignore[no-any-return] File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\sqlalchemy\util_concurrency_py3k.py", line 160, in greenlet_spawn value = await result File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\aiosqlite\cursor.py", line 37, in execute await self._execute(self._cursor.execute, sql, parameters) File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\aiosqlite\cursor.py", line 31, in _execute return await self._conn._execute(fn, *args, **kwargs) File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\aiosqlite\core.py", line 129, in _execute return await future File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\aiosqlite\core.py", line 102, in run result = function() sqlite3.IntegrityError: UNIQUE constraint failed: nonebot_plugin_follow_withdraw_followmessage.message_id
The above exception was the direct cause of the following exception:
Traceback (most recent call last): File "G:\NJS-Bot\bot.py", line 41, in
nonebot.run(app="mp_main__:app", access_log=False)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot__init__.py", line 309, in run
get_driver().run(*args, *kwargs)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\drivers\fastapi.py", line 198, in run
uvicorn.run(
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\uvicorn\main.py", line 578, in run
server.run()
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\uvicorn\server.py", line 61, in run
return asyncio.run(self.serve(sockets=sockets))
File "C:\software\Python310\lib\asyncio\runners.py", line 44, in run
return loop.run_until_complete(main)
File "C:\software\Python310\lib\asyncio\base_events.py", line 636, in run_until_complete
self.run_forever()
File "C:\software\Python310\lib\asyncio\windows_events.py", line 321, in run_forever
super().run_forever()
File "C:\software\Python310\lib\asyncio\base_events.py", line 603, in run_forever
self._run_once()
File "C:\software\Python310\lib\asyncio\base_events.py", line 1909, in _run_once
handle._run()
File "C:\software\Python310\lib\asyncio\events.py", line 80, in _run
self._context.run(self._callback, self._args)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\message.py", line 467, in check_and_run_matcher
await _run_matcher(
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\message.py", line 419, in _run_matcher
await matcher.run(bot, event, state, stack, dependency_cache)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\internal\matcher\matcher.py", line 753, in run
await self.simple_run(bot, event, state, stack, dependency_cache)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\internal\matcher\matcher.py", line 728, in simple_run
await handler(
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\dependencies\init.py", line 108, in call
return await cast(Callable[..., Awaitable[R]], self.call)(**values)
File "G:\NJS-Bot\src\plugins\nonebot_plugin_gpt3\init.py", line 328, in _
await matcher.send(resp, at_sender=True)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\internal\matcher\matcher.py", line 466, in send
return await bot.send(event=event, message=_message, **kwargs)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot_plugin_guild_patch\init.py", line 30, in patched_send
return await original_send(self, event, message, **kwargs)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\adapters\onebot\v11\bot.py", line 220, in send
return await self.class__.send_handler(self, event, message, kwargs)
File "C:\Users\shubi\AppData\Local\pypoetry\Cache\virtualenvs\njs-06ksLelh-py3.10\lib\site-packages\nonebot\adapters\onebot\v11\bot.py", line 174, in send
return await bot.send_msg(params)