Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

可能是戳一戳导致的卡死 #98

Open
lesser0 opened this issue Sep 17, 2024 · 0 comments
Open

可能是戳一戳导致的卡死 #98

lesser0 opened this issue Sep 17, 2024 · 0 comments
Labels
question 对错误或其它问题进行提问 wait-for-reply 信息不足,等待进一步补充信息

Comments

@lesser0
Copy link

lesser0 commented Sep 17, 2024

问题描述

在以下情况下overflow可能卡死。卡死后日志显示overflow仍能收到后续消息,但mirai的用户插件未收到事件。overflow和napcat部署在同一机器上。

复现

目前观察到的三次发生问题时最后报错都是戳一戳,其中两次是群戳一戳事件,一次是好友戳一戳事件。但戳一戳不必定触发此问题,不确定是否有额外条件,或只是概率发生。

Overflow 版本

d6669df

其他组件版本

mirai-console 2.16.0
NapCat 2.5.1

系统日志

bots/【qq号】/logs/下的日志为出错前正常收到消息,然后不再打出日志

logs/下的日志出错部分如下,在报错后,直到主动关闭前仍能打出正常接收到消息的日志。

其中一次群戳一戳出错时日志:

2024-09-17 12:29:57 W/Onebot: 请求失败: [get_group_member_info] 请求失败: app=NapCat.Onebot v2.5.1, message=Error: Uin2Uid Error 0不存在
    at GetGroupMemberInfo._handle (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:36567:21)
    at async GetGroupMemberInfo.websocketHandle (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:35924:23)
    at async OB11PassiveWebSocketAdapter.handleMessage (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:13379:21), retJson={"status":"failed","retcode":1200,"data":null,"message":"Error: Uin2Uid Error 0不存在\n    at GetGroupMemberInfo._handle (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:36567:21)\n    at async GetGroupMemberInfo.websocketHandle (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:35924:23)\n    at async OB11PassiveWebSocketAdapter.handleMessage (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:13379:21)","wording":"Error: Uin2Uid Error 0不存在\n    at GetGroupMemberInfo._handle (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:36567:21)\n    at async GetGroupMemberInfo.websocketHandle (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:35924:23)\n    at async OB11PassiveWebSocketAdapter.handleMessage (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:13379:21)","echo":826}。如果你认为这是 Overflow 的问题,请带上 logs/onebot 中的日志来反馈。
2024-09-17 12:29:57 W/stderr: Exception in thread "DefaultDispatcher-worker-2" java.lang.IllegalStateException: 群 *** 戳一戳事件 无法获取操作者
2024-09-17 12:29:57 W/stderr: 	at top.mrxiaom.overflow.internal.listener.NotifyNoticeListener.onMessage(bot.kt:44)
2024-09-17 12:29:57 W/stderr: 	at top.mrxiaom.overflow.internal.listener.NotifyNoticeListener$onMessage$1.invokeSuspend(bot.kt)
2024-09-17 12:29:57 W/stderr: 	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
2024-09-17 12:29:57 W/stderr: 	at kotlinx.coroutines.internal.ScopeCoroutine.afterResume(Scopes.kt:33)
2024-09-17 12:29:57 W/stderr: 	at kotlinx.coroutines.AbstractCoroutine.resumeWith(AbstractCoroutine.kt:102)
2024-09-17 12:29:57 W/stderr: 	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46)
2024-09-17 12:29:57 W/stderr: 	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
2024-09-17 12:29:57 W/stderr: 	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:570)
2024-09-17 12:29:57 W/stderr: 	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750)
2024-09-17 12:29:57 W/stderr: 	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:677)
2024-09-17 12:29:57 W/stderr: 	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:664)
2024-09-17 12:29:57 W/stderr: 	Suppressed: kotlinx.coroutines.DiagnosticCoroutineContextException: [CoroutineName(ConnectFactory), StandaloneCoroutine{Cancelling}@11a15e5c, Dispatchers.Default]

好友戳一戳出错时日志:

2024-09-17 14:57:48 V/top.mrxiaom.overflow.internal.deps.websocket.WebSocketImpl: process(300): (�~�({"time":1726556268,"self_id":***,"post_type":"notice","notice_type":"notify","sub_type":"poke","target_id":***,"user_id":***,"raw_info":[{"col":"1","nm":"","type":"qq","uid":"***"},{"col":"1","nm":"","tp":"1","type":"qq","uid":"***"}]})
2024-09-17 14:57:48 V/top.mrxiaom.overflow.internal.deps.websocket.drafts.Draft_6455: afterDecoding(296): {"time":1726556268,"self_id":***,"post_type":"notice","notice_type":"notify","sub_type":"poke","target_id":***,"user_id":***,"raw_info":[{"col":"1","nm":"","type":"qq","uid":"***"},{"col":"1","nm":"","tp":"1","type":"qq","uid":"***"}]}
2024-09-17 14:57:48 V/top.mrxiaom.overflow.internal.deps.websocket.WebSocketImpl: matched frame: Framedata{ opcode:TEXT, fin:true, rsv1:false, rsv2:false, rsv3:false, payload length:[pos:0, len:296], payload:{"time":1726556268,"self_id":***,"post_type":"notice","notice_type":"notify","sub_type":"poke","target_id":***,"user_id":***,"raw_info":[{"col":"1","nm":"","type":"qq","uid":"***"},{"col":"1","nm":"","tp":"1","type":"qq","uid":"***"}]}}
2024-09-17 14:57:48 D/Onebot: [Recv] <-- {"time":1726556268,"self_id":***,"post_type":"notice","notice_type":"notify","sub_type":"poke","target_id":***,"user_id":***,"raw_info":[{"col":"1","nm":"","type":"qq","uid":"***"},{"col":"1","nm":"","tp":"1","type":"qq","uid":"***"}]}
2024-09-17 14:57:48 D/cn.evolvefield.onebot.client.handler.EventBus: 接收到上报消息内容:cn.evolvefield.onebot.sdk.event.notice.NotifyNoticeEvent@242b367c
2024-09-17 14:57:48 W/stderr: Exception in thread "DefaultDispatcher-worker-2" java.lang.IllegalStateException: 好友 *** 戳一戳事件 出现预料中的错误: 目标好友不是机器人
2024-09-17 14:57:48 W/stderr: 	at top.mrxiaom.overflow.internal.listener.NotifyNoticeListener.onMessage(bot.kt:38)
2024-09-17 14:57:48 W/stderr: 	at top.mrxiaom.overflow.internal.listener.NotifyNoticeListener.onMessage(bot.kt:26)
2024-09-17 14:57:48 W/stderr: 	at cn.evolvefield.onebot.client.listener.EventListenerKt.message(EventListener.kt:21)
2024-09-17 14:57:48 W/stderr: 	at cn.evolvefield.onebot.client.handler.EventBus.onReceive(EventBus.kt:44)
2024-09-17 14:57:48 W/stderr: 	at cn.evolvefield.onebot.client.connection.IAdapter$onReceiveMessage$1$1$1.invokeSuspend(IAdapter.kt:31)
2024-09-17 14:57:48 W/stderr: 	at cn.evolvefield.onebot.client.connection.IAdapter$onReceiveMessage$1$1$1.invoke(IAdapter.kt)
2024-09-17 14:57:48 W/stderr: 	at cn.evolvefield.onebot.client.connection.IAdapter$onReceiveMessage$1$1$1.invoke(IAdapter.kt)
2024-09-17 14:57:48 W/stderr: 	at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturnIgnoreTimeout(Undispatched.kt:100)
2024-09-17 14:57:48 W/stderr: 	at kotlinx.coroutines.TimeoutKt.setupTimeout(Timeout.kt:146)
2024-09-17 14:57:48 W/stderr: 	at kotlinx.coroutines.TimeoutKt.withTimeoutOrNull(Timeout.kt:103)
2024-09-17 14:57:48 W/stderr: 	at cn.evolvefield.onebot.client.connection.IAdapter$onReceiveMessage$1.invokeSuspend(IAdapter.kt:30)
2024-09-17 14:57:48 W/stderr: 	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
2024-09-17 14:57:48 W/stderr: 	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
2024-09-17 14:57:48 W/stderr: 	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:570)
2024-09-17 14:57:48 W/stderr: 	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750)
2024-09-17 14:57:48 W/stderr: 	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:677)
2024-09-17 14:57:48 W/stderr: 	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:664)
2024-09-17 14:57:48 W/stderr: 	Suppressed: kotlinx.coroutines.DiagnosticCoroutineContextException: [CoroutineName(ConnectFactory), StandaloneCoroutine{Cancelling}@38e43046, Dispatchers.Default]

网络日志

在以下报错后,直到主动关闭前仍能打出正常接收到消息的日志。

其中一次群戳一戳出错时日志:

2024-09-17 12:29:56 D/Onebot: [Recv] <-- {"time":1726547396,"self_id":***,"post_type":"notice","notice_type":"notify","sub_type":"poke","target_id":***,"user_id":0,"group_id":***,"raw_info":[{"col":"1","nm":"","type":"qq","uid":"***"},{"jp":"https://zb.vip.qq.com/v2/pages/nudgeMall?_wv=2&actionId=10","src":"http://tianquan.gtimg.cn/nudgeaction/item/10/expression.jpg","type":"img"},{"txt":"踢了踢","type":"nor"},{"col":"1","nm":"","tp":"0","type":"qq","uid":"***"},{"txt":"的门,发现是mimic","type":"nor"}]}
2024-09-17 12:29:56 D/Onebot: [Send] --> {"action":"get_group_member_info","params":{"group_id":***,"user_id":0,"no_cache":false},"echo":826}
2024-09-17 12:29:57 D/Onebot: [Recv] <-- {"status":"failed","retcode":1200,"data":null,"message":"Error: Uin2Uid Error 0不存在\n    at GetGroupMemberInfo._handle (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:36567:21)\n    at async GetGroupMemberInfo.websocketHandle (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:35924:23)\n    at async OB11PassiveWebSocketAdapter.handleMessage (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:13379:21)","wording":"Error: Uin2Uid Error 0不存在\n    at GetGroupMemberInfo._handle (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:36567:21)\n    at async GetGroupMemberInfo.websocketHandle (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:35924:23)\n    at async OB11PassiveWebSocketAdapter.handleMessage (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:13379:21)","echo":826}
2024-09-17 12:29:57 W/Onebot: 请求失败: [get_group_member_info] 请求失败: app=NapCat.Onebot v2.5.1, message=Error: Uin2Uid Error 0不存在
    at GetGroupMemberInfo._handle (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:36567:21)
    at async GetGroupMemberInfo.websocketHandle (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:35924:23)
    at async OB11PassiveWebSocketAdapter.handleMessage (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:13379:21), retJson={"status":"failed","retcode":1200,"data":null,"message":"Error: Uin2Uid Error 0不存在\n    at GetGroupMemberInfo._handle (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:36567:21)\n    at async GetGroupMemberInfo.websocketHandle (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:35924:23)\n    at async OB11PassiveWebSocketAdapter.handleMessage (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:13379:21)","wording":"Error: Uin2Uid Error 0不存在\n    at GetGroupMemberInfo._handle (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:36567:21)\n    at async GetGroupMemberInfo.websocketHandle (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:35924:23)\n    at async OB11PassiveWebSocketAdapter.handleMessage (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:13379:21)","echo":826}。如果你认为这是 Overflow 的问题,请带上 logs/onebot 中的日志来反馈。
2024-09-17 12:29:57 V/Onebot: Stacktrace: 
cn.evolvefield.onebot.client.util.ActionFailedException: 请求失败: app=NapCat.Onebot v2.5.1, message=Error: Uin2Uid Error 0不存在
    at GetGroupMemberInfo._handle (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:36567:21)
    at async GetGroupMemberInfo.websocketHandle (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:35924:23)
    at async OB11PassiveWebSocketAdapter.handleMessage (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:13379:21), retJson={"status":"failed","retcode":1200,"data":null,"message":"Error: Uin2Uid Error 0不存在\n    at GetGroupMemberInfo._handle (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:36567:21)\n    at async GetGroupMemberInfo.websocketHandle (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:35924:23)\n    at async OB11PassiveWebSocketAdapter.handleMessage (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:13379:21)","wording":"Error: Uin2Uid Error 0不存在\n    at GetGroupMemberInfo._handle (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:36567:21)\n    at async GetGroupMemberInfo.websocketHandle (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:35924:23)\n    at async OB11PassiveWebSocketAdapter.handleMessage (file:///C:/Mirai_Overflow_incubator/NapCat/napcat.mjs:13379:21)","echo":826}
	at cn.evolvefield.onebot.client.util.ActionSendRequest.send(ActionSendRequest.kt:67)
	at cn.evolvefield.onebot.client.util.ActionSendRequest$send$1.invokeSuspend(ActionSendRequest.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.internal.ScopeCoroutine.afterResume(Scopes.kt:33)
	at kotlinx.coroutines.AbstractCoroutine.resumeWith(AbstractCoroutine.kt:102)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:570)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:677)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:664)

好友戳一戳出错时网络日志未报错:

2024-09-17 14:57:48 D/Onebot: [Recv] <-- {"time":1726556268,"self_id":***,"post_type":"notice","notice_type":"notify","sub_type":"poke","target_id":***,"user_id":***,"raw_info":[{"col":"1","nm":"","type":"qq","uid":"***"},{"col":"1","nm":"","tp":"1","type":"qq","uid":"***"}]}

补充信息

No response

@lesser0 lesser0 added the question 对错误或其它问题进行提问 label Sep 17, 2024
MrXiaoM added a commit that referenced this issue Sep 18, 2024
@MrXiaoM MrXiaoM added the wait-for-reply 信息不足,等待进一步补充信息 label Sep 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question 对错误或其它问题进行提问 wait-for-reply 信息不足,等待进一步补充信息
Projects
None yet
Development

No branches or pull requests

2 participants