Skip to content
This repository was archived by the owner on Nov 19, 2025. It is now read-only.
This repository was archived by the owner on Nov 19, 2025. It is now read-only.

napcat插件视频限制下载大小不生效,可能和内存泄漏有关(存疑) #73

Description

@songmingtiiiii

检查项

  • 我确认此问题在所有分支的最新版本中依旧存在
  • 我确认在 Issues 列表中并无其他人已经提出过与此问题相同或相似的问题
  • 我使用了 Docker

使用的分支

dev

具体版本号

0.12.1

遇到的问题

如图,我在napcat配置项配置视频大小最高为1mb,但是在mofox的控制台依然看到程序在下载超过1mb的视频,并且我的程序存在内存泄漏的问题,长时间运行会爆运存16g然后系统自动杀死程序。

值得一提的是,我观察了几次程序被杀死最后的控制台,我发现每次程序死亡前的最后一条命令都是和视频下载有关的,因此我怀疑视频相关的代码和内存泄漏可能存在一定关联。

Image Image Image

报错信息

以下是程序被杀死前最后的debug日志

{"logger_name": "napcat_adapter", "event": "获取群聊信息中", "level": "debug", "timestamp": "11-17 22:08:37", "color": "#5F87AF", "alias": "Napcat 适配器"}
{"event": "operation functools.partial(<built-in method execute of sqlite3.Cursor object at 0x7eaf3de25dc0>, 'SELECT messages.id, messages.message_id, messages.time, messages.chat_id, messages.reply_to, messages.interest_value, messages.key_words, messages.key_words_lite, messages.is_mentioned, messages.chat_info_stream_id, messages.chat_info_platform, messages.chat_info_user_platform, messages.chat_info_user_id, messages.chat_info_user_nickname, messages.chat_info_user_cardname, messages.chat_info_group_platform, messages.chat_info_group_id, messages.chat_info_group_name, messages.chat_info_create_time, messages.chat_info_last_active_time, messages.user_platform, messages.user_id, messages.user_nickname, messages.user_cardname, messages.processed_plain_text, messages.display_message, messages.memorized_times, messages.priority_mode, messages.priority_info, messages.additional_config, messages.is_emoji, messages.is_picid, messages.is_command, messages.is_notify, messages.is_public_notice, messages.notice_type, messages.actions, messages.should_reply, messages.should_act \nFROM messages \nWHERE messages.chat_id = ? AND messages.time < ? ORDER BY messages.time DESC\n LIMIT ? OFFSET ?', ('c45393c30a4439efc793a1e3f7a0cd515661c99fbb70c099b056cb8ea95f0452', 1763388515.8538845, 50, 0)) completed", "logger": "aiosqlite", "level": "debug", "timestamp": "2025-11-17T14:08:37.374750Z"}
{"logger_name": "napcat_adapter", "event": "视频下载成功,大小: 65.74 MB", "level": "debug", "timestamp": "11-17 22:08:37", "color": "#5F87AF", "alias": "Napcat 适配器"}
{"event": "operation functools.partial(<built-in method execute of sqlite3.Cursor object at 0x7eaf4a9902c0>, 'SELECT messages.id, messages.message_id, messages.time, messages.chat_id, messages.reply_to, messages.interest_value, messages.key_words, messages.key_words_lite, messages.is_mentioned, messages.chat_info_stream_id, messages.chat_info_platform, messages.chat_info_user_platform, messages.chat_info_user_id, messages.chat_info_user_nickname, messages.chat_info_user_cardname, messages.chat_info_group_platform, messages.chat_info_group_id, messages.chat_info_group_name, messages.chat_info_create_time, messages.chat_info_last_active_time, messages.user_platform, messages.user_id, messages.user_nickname, messages.user_cardname, messages.processed_plain_text, messages.display_message, messages.memorized_times, messages.priority_mode, messages.priority_info, messages.additional_config, messages.is_emoji, messages.is_picid, messages.is_command, messages.is_notify, messages.is_public_notice, messages.notice_type, messages.actions, messages.should_reply, messages.should_act \nFROM messages \nWHERE messages.chat_id = ? AND messages.time >= ? AND messages.time <= ? AND messages.user_id != ? ORDER BY messages.time ASC', ('c45393c30a4439efc793a1e3f7a0cd515661c99fbb70c099b056cb8ea95f0452', 1763361990.6476746, 1763388515.8542955, '1599737304')) completed", "logger": "aiosqlite", "level": "debug", "timestamp": "2025-11-17T14:08:37.388629Z"}
{"logger_name": "napcat_adapter", "event": "handle_real_message完成,处理了1个消息段,生成了1个seg", "level": "debug", "timestamp": "11-17 22:08:37", "color": "#5F87AF", "alias": "Napcat 适配器"}
{"logger_name": "napcat_adapter", "event": "动态生成 content_format: ['video']", "level": "debug", "timestamp": "11-17 22:08:37", "color": "#5F87AF", "alias": "Napcat 适配器"}
{"logger_name": "napcat_adapter", "event": "准备发送消息到MoFox-Bot,消息段数量: 1", "level": "debug", "timestamp": "11-17 22:08:37", "color": "#5F87AF", "alias": "Napcat 适配器"}
{"event": "operation functools.partial(<built-in method execute of sqlite3.Cursor object at 0x7eaf4a9f0e40>, 'SELECT messages.id, messages.message_id, messages.time, messages.chat_id, messages.reply_to, messages.interest_value, messages.key_words, messages.key_words_lite, messages.is_mentioned, messages.chat_info_stream_id, messages.chat_info_platform, messages.chat_info_user_platform, messages.chat_info_user_id, messages.chat_info_user_nickname, messages.chat_info_user_cardname, messages.chat_info_group_platform, messages.chat_info_group_id, messages.chat_info_group_name, messages.chat_info_create_time, messages.chat_info_last_active_time, messages.user_platform, messages.user_id, messages.user_nickname, messages.user_cardname, messages.processed_plain_text, messages.display_message, messages.memorized_times, messages.priority_mode, messages.priority_info, messages.additional_config, messages.is_emoji, messages.is_picid, messages.is_command, messages.is_notify, messages.is_public_notice, messages.notice_type, messages.actions, messages.should_reply, messages.should_act \nFROM messages \nWHERE messages.chat_id = ? AND messages.time >= ? AND messages.time <= ? AND messages.user_id != ? ORDER BY messages.time ASC', ('95693d24f0cca84f44cbba8cbf38c6518326751e841357cb4d866e9d5fdae785', 1763355733.8111112, 1763388515.1215405, '1599737304')) completed", "logger": "aiosqlite", "level": "debug", "timestamp": "2025-11-17T14:08:37.758463Z"}
{"event": "operation functools.partial(<built-in method execute of sqlite3.Cursor object at 0x7eaf4a1ef8c0>, 'SELECT messages.id, messages.message_id, messages.time, messages.chat_id, messages.reply_to, messages.interest_value, messages.key_words, messages.key_words_lite, messages.is_mentioned, messages.chat_info_stream_id, messages.chat_info_platform, messages.chat_info_user_platform, messages.chat_info_user_id, messages.chat_info_user_nickname, messages.chat_info_user_cardname, messages.chat_info_group_platform, messages.chat_info_group_id, messages.chat_info_group_name, messages.chat_info_create_time, messages.chat_info_last_active_time, messages.user_platform, messages.user_id, messages.user_nickname, messages.user_cardname, messages.processed_plain_text, messages.display_message, messages.memorized_times, messages.priority_mode, messages.priority_info, messages.additional_config, messages.is_emoji, messages.is_picid, messages.is_command, messages.is_notify, messages.is_public_notice, messages.notice_type, messages.actions, messages.should_reply, messages.should_act \nFROM messages \nWHERE messages.chat_id = ? AND messages.time < ? ORDER BY messages.time DESC\n LIMIT ? OFFSET ?', ('95693d24f0cca84f44cbba8cbf38c6518326751e841357cb4d866e9d5fdae785', 1763388515.1211782, 50, 0)) completed", "logger": "aiosqlite", "level": "debug", "timestamp": "2025-11-17T14:08:37.759805Z"}
{"logger_name": "napcat_adapter", "event": "消息段 0: type=video, data={'base64': 'AAAAGGZ0eXBtcDQyAAAAAGlzb21tcDQyAAAMeGZyZWUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw...", "level": "debug", "timestamp": "11-17 22:08:37", "color": "#5F87AF", "alias": "Napcat 适配器"}
{"logger_name": "napcat_adapter", "event": "发送到Maibot处理信息", "level": "debug", "timestamp": "11-17 22:08:37", "color": "#5F87AF", "alias": "Napcat 适配器"}

如何重现此问题?

No response

可能造成问题的原因

下载视频占用性能

系统环境

Ubuntu24.04

Python 版本

Python3.12.3

补充信息

窝稀饭泥

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No fields configured for Bug.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions