ARM版mysql shell运行报错
服务器信息:阿里云ARM版OpenEuler 22.03 sp4 ,安装GreaSQL 8.0.32-26。
https://greatsql.cn/data/attachment/forum/202502/17/144903d9sb595197l0f1uz.png
部署greatsql-shell-8.0.32-25-glibc2.28-aarch64.tar.xz,运行报错:Segmentation fault (core dumped)
dump Core数据见附件:
执行 strace -f /usr/local/mysqlsh/bin/mysqlsh 见附件“strace.txt”:
AI分析 strace 输出的几个关键点:
1、库加载:mysqlsh 正确加载了所有依赖的库文件,没有出现 ENOENT 错误 (文件未找到)。这表明依赖关系没有问题。
2、内存映射:mmap 和 munmap 调用显示程序进行了一些内存映射操作。其中一些 munmap 调用返回了 EINVAL 错误 (无效参数),但这通常不会导致程序崩溃。
3、信号:SIGSEGV 信号是导致程序崩溃的直接原因。SEGV_MAPERR 代码表示访问了无效的内存地址。
结合之前的分析,我们可以初步推断:
1、问题可能出在 mysqlsh 本身: 由于故障地址是 NULL,这很可能意味着程序内部存在 bug,导致访问了空指针。
2、时间函数可能不是直接原因: 虽然之前的 backtrace 显示崩溃发生在 gettimeofday 调用附近,但 strace 的输出并没有显示任何与时间相关的系统调用出错。 这表明时间函数可能不是直接原因,而只是崩溃发生的位置。 openEuler 22.03 sp4的glibc版本较高,我们发行的greatsql-shell-8.0.32-25-glibc2.28-aarch64可能适配性做的不够好,您可以试试改用docker方式运行
参考:https://gitee.com/GreatSQL/GreatSQL-Docker/tree/master/GreatSQL-Shell yejr 发表于 2025-2-18 14:49
openEuler 22.03 sp4的glibc版本较高,我们发行的greatsql-shell-8.0.32-25-glibc2.28-aarch64可能适配性做 ...
收到,叶老师,感谢。
页:
[1]