initialencounter / 2022-12-24

GNU Affero General Public License v3.0
42 stars 10 forks source link

关于koishi-plugin-davinci-003的报错无限重试、日志一直输出而导致的内存占用过高的问题反馈 #41

Closed shangxueink closed 8 months ago

shangxueink commented 8 months ago

尊敬的开发者 initialencounter , 您好!

在我使用您开发的 koishi-plugin-davinci-003 插件的过程中出现了一些问题

问题出现的背景:

使用 koishi desktop,在插件市场正常安装 koishi-plugin-davinci-003 的 6.4.3 版本,

我的koishi环境是

System:
    OS: Windows 10 10.0.20348
    CPU: (4) x64 AMD EPYC 7K62 48-Core Processor

Binaries:
    Node: 20.3.1
    Yarn: 4.0.1

Koishi:
    Core: 4.17.2
    Console: 5.28.0
    Koishi Desktop: 1.0.2

在我使用 koishi-plugin-davinci-003 的 6.4.1 或者 6.4.2 版本时,我曾遇到过 code502 之类的日志无限刷新的爆错

d9fd4a05a01fd7bcf7ecdafbb9a246ec

报错并没有像配置项所期望的那样重试三十次就停下来,而是不断报错,这也导致了我对本地日志,同一天有几百份

179127122574fa011c79bcc5cf87659d

这样的报错并不止我个别的情况,我曾遇到多位同样的报错情况的使用者们。

我并未对插件本身进行任何修改,davinci-003 插件的配置项具体内容是这样的:

image

其中我尤其注意到了【 maxRetryTimes 】配置项,这在我使用使用 koishi-plugin-davinci-003 的 6.4.1 或者 6.4.2 版本时一直是默认的配置,也就是 30 。

我在更新版本(仅更新koishi-plugin-davinci-003)(尝试解决在 6.4.1 或者 6.4.2 版本遇到的问题)后,修改了【maxRetryTimes】配置项为【0】。

为了再一次对复现类似的情况,我对机器人进行私聊刷屏压测,再一次复现了类似情况

我对我的问题的描述如下:

机器人一开始还是回复的,但是过了几十条之后便不再回复,

具体对应表现为:

133e3de010b9e41639367e866221f91a

dd071a4760791c8be275684554814cc1

这种情况下(无限报错)的日志文件往往会变得很多,

05e474d2dba740f8708fa0574fa58cb9

然而此时尝试重载插件和开关插件都是无果的,日志不会停下。

关闭插件也是关不掉的

image

只有重启对应的koishi实例之后才能解决这个问题。

我推测这个报错发生的时候,往往Koishi的内存占用会随着时间增长,

我也曾出现过单个koishi实例占用超过4G的情况

4622c3395dbf1adbf291cd2e704fb9fc

希望您能重视此问题,并及时修复有关【 maxRetryTimes 】配置项不生效的问题!

感谢!

shangxueink commented 8 months ago

就在刚才,我在使用6.4.2版本的过程中,再一次遇到了我在 6.4.1 或者 6.4.2 版本遇到的问题

日志是这样的

90bdbe15d2b8d6c5bb872ab04d9a2948