ssttkkl / PixivBot

集成插件nonebot-plugin-pixivbot的NoneBot实例的Docker镜像,适用于Docker方式部署。
MIT License
259 stars 16 forks source link

发生内部错误:<class 'pymongo.errors.DocumentTooLarge'>'update' command document too large #33

Closed Noctulus closed 2 years ago

Noctulus commented 2 years ago

终端输出如下: `05-09 01:02:15 [ERROR] src | 'update' command document too large Traceback (most recent call last): File "/usr/local/bin/gunicorn", line 8, in sys.exit(run()) File "/usr/local/lib/python3.9/site-packages/gunicorn/app/wsgiapp.py", line 67, in run WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run() File "/usr/local/lib/python3.9/site-packages/gunicorn/app/base.py", line 231, in run super().run() File "/usr/local/lib/python3.9/site-packages/gunicorn/app/base.py", line 72, in run Arbiter(self).run() File "/usr/local/lib/python3.9/site-packages/gunicorn/arbiter.py", line 202, in run self.manage_workers() File "/usr/local/lib/python3.9/site-packages/gunicorn/arbiter.py", line 551, in manage_workers self.spawn_workers() File "/usr/local/lib/python3.9/site-packages/gunicorn/arbiter.py", line 622, in spawn_workers self.spawn_worker() File "/usr/local/lib/python3.9/site-packages/gunicorn/arbiter.py", line 589, in spawn_worker worker.init_process() File "/usr/local/lib/python3.9/site-packages/uvicorn/workers.py", line 66, in init_process super(UvicornWorker, self).init_process() File "/usr/local/lib/python3.9/site-packages/gunicorn/workers/base.py", line 142, in init_process self.run() File "/usr/local/lib/python3.9/site-packages/uvicorn/workers.py", line 83, in run return asyncio.run(self._serve()) File "/usr/local/lib/python3.9/asyncio/runners.py", line 44, in run return loop.run_until_complete(main) File "/usr/local/lib/python3.9/site-packages/nonebot/message.py", line 153, in _check_matcher await _run_matcher(Matcher, bot, event, state, stack, dependency_cache) File "/usr/local/lib/python3.9/site-packages/nonebot/message.py", line 202, in _run_matcher await matcher.run(bot, event, state, stack, dependency_cache) File "/usr/local/lib/python3.9/site-packages/nonebot/internal/matcher.py", line 668, in run await self.simple_run(bot, event, state, stack, dependency_cache) File "/usr/local/lib/python3.9/site-packages/nonebot/internal/matcher.py", line 635, in simple_run await handler( File "/usr/local/lib/python3.9/site-packages/nonebot/dependencies/init.py", line 92, in call return await self.call(**values) File "/app/src/plugins/nonebot-plugin-pixivbot/common_command.py", line 112, in handle_ranking_query await distributor.distribute_ranking(mode, range, bot=bot, event=event)

File "/app/src/plugins/nonebot-plugin-pixivbot/distributor.py", line 66, in wrapped await func(self, *args, bot=bot, event=event, user_id=user_id, group_id=group_id, silently=silently, *kwargs) File "/app/src/plugins/nonebot-plugin-pixivbot/distributor.py", line 364, in distribute_ranking msg = await self._make_illusts_msg( File "/app/src/plugins/nonebot-plugin-pixivbot/distributor.py", line 219, in _make_illusts_msg msg.extend(await t) File "/app/src/plugins/nonebot-plugin-pixivbot/distributor.py", line 198, in _make_illust_msg bio.write(await self.data_source.download(illust)) File "/app/src/plugins/nonebot-plugin-pixivbot/data_source/pixiv_data_source.py", line 357, in download return await self._cache_manager.get( File "/app/src/plugins/nonebot-plugin-pixivbot/data_source/cache_manager.py", line 39, in get await self._waiting.pop(identifier) File "/app/src/plugins/nonebot-plugin-pixivbot/data_source/cache_manager.py", line 37, in get return await fut File "/app/src/plugins/nonebot-plugin-pixivbot/data_source/cache_manager.py", line 48, in _fetch await cache_updater(result) File "/app/src/plugins/nonebot-plugin-pixivbot/data_source/cache_data_source.py", line 192, in update_download await db().download_cache.update_one( File "/usr/local/lib/python3.9/concurrent/futures/thread.py", line 52, in run result = self.fn(self.args, **self.kwargs) File "/usr/local/lib/python3.9/site-packages/pymongo/collection.py", line 1028, in update_one self._update_retryable( File "/usr/local/lib/python3.9/site-packages/pymongo/collection.py", line 877, in _update_retryable return self.__database.client._retryable_write( File "/usr/local/lib/python3.9/site-packages/pymongo/mongo_client.py", line 1552, in _retryable_write return self._retry_with_session(retryable, func, s, None) File "/usr/local/lib/python3.9/site-packages/pymongo/mongo_client.py", line 1438, in _retry_with_session return self._retry_internal(retryable, func, session, bulk) File "/usr/local/lib/python3.9/site-packages/pymongo/mongo_client.py", line 1470, in _retry_internal return func(session, sock_info, retryable) File "/usr/local/lib/python3.9/site-packages/pymongo/collection.py", line 869, in _update return self._update( File "/usr/local/lib/python3.9/site-packages/pymongo/collection.py", line 838, in _update result = sock_info.command( File "/usr/local/lib/python3.9/site-packages/pymongo/pool.py", line 726, in command self._raise_connection_failure(error) File "/usr/local/lib/python3.9/site-packages/pymongo/pool.py", line 710, in command return command(self, dbname, spec, secondary_ok, File "/usr/local/lib/python3.9/site-packages/pymongo/network.py", line 136, in command message._raise_document_too_large( File "/usr/local/lib/python3.9/site-packages/pymongo/message.py", line 1140, in _raise_document_too_large raise DocumentTooLarge("%r command document too large" % (operation,)) pymongo.errors.DocumentTooLarge: 'update' command document too large`

ssttkkl commented 2 years ago

已修复