-
Notifications
You must be signed in to change notification settings - Fork 560
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
[bug] CI 版本,雾凇拼音,若算法服务被拉起,进入部署状态,则当前应用卡死,且算法服务崩溃 #1279
Comments
嗯,试试开启一个大字表呢,那个 44418 字表,那个应该要部署一段时间 我试了三次,都有卡死现象才提的 |
一样没有复现问题, Windows 10 LTSC 测试的,版本号10.0.19044 暂缺 Build 19044 部署多长时间影响不大,我试过有空明码部署(完整一次要接近1分钟),删除全部部署好的空明码的文件然后部署,打字也没有卡死 |
最新的代码中,从Client发出的消息,如果超时2秒会强制返回0,按理说不会有可能卡死。 weasel/WeaselIPC/WeaselClientImpl.cpp Lines 195 to 215 in 8246b8c
在处理按键过程中,如果返回0就意味着这个按键事件 rime不处理,直接会跳过相关输入法相关的处理直接将按键交给应用处理,就是直接上屏的状态 weasel/WeaselTSF/KeyEventSink.cpp Lines 7 to 17 in 8246b8c
如果是Echo中,超时返回0会让Client识别连接无效,也是跳过输入处理的 weasel/WeaselTSF/WeaselTSF.cpp Lines 235 to 261 in 8246b8c
|
可能是我少描述了什么,我这里 Windows 11 lot LTSC 和 Windows 23H2(AAtlas OS)照样能复现: 1717234460.webmEdit:就这样吧,改天再试,或者看看其他人怎么说。 |
这个dmp文件可以上传上来,毕竟已经知道你是哪个版本的小狼毫了 |
这个是重新跑的。Windows 10 虚拟机 我不懂具体实现,但允许我 Off-topic 一下,Weasel 可能在处理 lua 时和其他前端有些不一样。这个 librime-lua 的 bug,其他所有前端都会报错,rime_api_console 也会报错,但唯独 Weasel 不报错,按理说应当是无法同步,用户词典锁定的。 Update: 我用实机跑了下(非雾凇配置,但用了雾凇的词库,以及其中的两个 unicode 和 number 两个lua),报了这个错误,实机用的是自己构建的 librime,所以不放 dmp 了 |
自行构建rime.dll 应该会有rime.pdb, 将这个和weaselserver.pdb 都放exe同目录,在那个分析软件加上那个路径,分析下就有东西出来了至于 c0000005参考 |
不懂,没看到过 rime.pdb,和用 clang 编译的有关系吗? 那个软件也没搞明白,移动 pdb 到程序目录,并添加 symbol 路径后,点分析,提示什么无法生成 xxx,返回了 31 之类。 等你发新版后,其他人有没有复现好了。🤣 |
哦,clang 编译是没有的,msvc 的产物 |
复现了问题,但是这个未有思路 |
有一个办法是注释掉 weasel/RimeWithWeasel/RimeWithWeasel.cpp Lines 118 to 120 in 8246b8c
不在算法服务里面部署,只能用WeaselDeployer.exe来部署更新 更新,我推自用分支了,目前试了似乎还行 |
昨天搞懂那个 pdb 分析软件的用法(虚拟机无支持的浏览器,无法打开报告才报错) 里面提示是什么内存访问出错,跟这个一模一样 大概他说的现象,也是这个原因:#1259 (comment) 我原先努力复现,是以为能找到了一些人说的什么 lua 导致崩溃、和开机不能自启的稳定复现方法,看起来不太像。🤣 |
试了一下,现在好多了。用了一天多下来,没有出现假死的情况了 |
复现步骤:
2024.06.01.16.22.webm
(视频中截了一段,是因为第一次实验,整个系统卡死了,我乱点后,直接被强退了,上面的 error log 显示未编译完成)
Originally posted by @mirtlebot in #1269 (comment)
猜想:
若此 bug 证实,我猜想之前一些用户未能正常开机自启动的原因是,
之所以会进入部署状态,我猜想可能是有一些人喜欢用第三方软件往词库里面加词(lua 也可以做到),这些东西都需要重新部署
个人猜测和 lua 写的好不好关联不大,毕竟上述实验,一个字都没打上,如果真的是分析和 lua 相关,那只能说在乱打的时候, lua 做了什么事情,或者在卡死后,lua 没做什么事情
The text was updated successfully, but these errors were encountered: