解决InnoDB: Failing assertion: !lock->recursive
背景:
在arm服务器里运行MySQL5.7.22版本
报错信息 :
2024-11-25T08:07:36.241825+08:00 856 [Note] Multi-threaded slave statistics for channel '': seconds elapsed = 126; events assigned = 53431297; worker queues filled over overrun level = 0; waited due a Worker queue full = 0; waited due the total size = 0; waited at clock conflicts = 894612095100 waited (count) when Workers occupied = 76 waited when Workers occupied = 36574500
2024-11-25T08:09:36.383649+08:00 856 [Note] Multi-threaded slave statistics for channel '': seconds elapsed = 120; events assigned = 53462017; worker queues filled over overrun level = 0; waited due a Worker queue full = 0; waited due the total size = 0; waited at clock conflicts = 894781573600 waited (count) when Workers occupied = 76 waited when Workers occupied = 36574500
2024-11-25 08:10:43 0xffaa167160e0 InnoDB: Assertion failure in thread 281105986052320 in file sync0rw.cc line 560
InnoDB: Failing assertion: !lock->recursive
InnoDB: We intentionally generate a memory trap.
InnoDB: Submit a detailed bug report to http://bugs.mysql.com.
InnoDB: If you get repeated assertion failures or crashes, even
InnoDB: immediately after the mysqld startup, there may be
InnoDB: corruption in the InnoDB tablespace. Please refer to
InnoDB: http://dev.mysql.com/doc/refman/5.7/en/forcing-innodb-recovery.html
InnoDB: about forcing recovery.
00:10:43 UTC - mysqld got signal 6 ;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
Attempting to collect some information that could help diagnose the problem.
As this is a crash and something is definitely wrong, the information
collection process might fail.key_buffer_size=33554432
read_buffer_size=2097152
max_used_connections=4
max_threads=64020
thread_count=18
connection_count=0
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 394231416 K bytes of memory
Hope that's ok; if not, decrease some variables in the equation.Thread pointer: 0xffa990007f70
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
stack_bottom = ffaa167157a0 thread_stack 0x30000
/export/servers/app/mysql-5.7.22/bin/mysqld(my_print_stacktrace+0x2c)[0xd907ec]
/export/servers/app/mysql-5.7.22/bin/mysqld(handle_fatal_signal+0x39c)[0x70dcdc]
linux-vdso.so.1(__kernel_rt_sigreturn+0x0)[0xffffa93ef8ec]
/usr/lib64/libc.so.6(+0x80df8)[0xffffa8f2cdf8]
/usr/lib64/libc.so.6(raise+0x1c)[0xffffa8ee8cbc]
/usr/lib64/libc.so.6(abort+0xe0)[0xffffa8ed6cec]
/export/servers/app/mysql-5.7.22/bin/mysqld[0x6e55bc]
/export/servers/app/mysql-5.7.22/bin/mysqld[0xef7908]
/export/servers/app/mysql-5.7.22/bin/mysqld(_Z16buf_page_get_genRK9page_id_tRK11page_size_tmP11buf_block_tmPKcmP5mtr_tb+0x664)[0xf75ac4]
/export/servers/app/mysql-5.7.22/bin/mysqld(_Z20btr_cur_latch_leavesP11buf_block_tRK9page_id_tRK11page_size_tmP9btr_cur_tP5mtr_t+0x58c)[0xf5323c]
/export/servers/app/mysql-5.7.22/bin/mysqld(_Z27btr_cur_search_to_nth_levelP12dict_index_tmPK8dtuple_t15page_cur_mode_tmP9btr_cur_tmPKcmP5mtr_t+0x12a8)[0xf59848]
/export/servers/app/mysql-5.7.22/bin/mysqld(_Z30btr_pcur_restore_position_funcmP10btr_pcur_tPKcmP5mtr_t+0x120)[0xf607f0]
/export/servers/app/mysql-5.7.22/bin/mysqld[0xed3ca4]
/export/servers/app/mysql-5.7.22/bin/mysqld[0xed84e4]
/export/servers/app/mysql-5.7.22/bin/mysqld(_Z7row_updP10upd_node_tP9que_thr_t+0x230)[0xed8e40]
/export/servers/app/mysql-5.7.22/bin/mysqld(_Z12row_upd_stepP9que_thr_t+0x68)[0xed8f08]
/export/servers/app/mysql-5.7.22/bin/mysqld[0xea6318]
/export/servers/app/mysql-5.7.22/bin/mysqld(_ZN11ha_innobase10update_rowEPKhPh+0x148)[0xdd3f58]
/export/servers/app/mysql-5.7.22/bin/mysqld(_ZN7handler13ha_update_rowEPKhPh+0x198)[0x7566fc]
/export/servers/app/mysql-5.7.22/bin/mysqld(_ZN21Update_rows_log_event11do_exec_rowEPK14Relay_log_info+0x84)[0xd06984]
/export/servers/app/mysql-5.7.22/bin/mysqld(_ZN14Rows_log_event12do_apply_rowEPK14Relay_log_info+0x2c)[0xd034fc]
/export/servers/app/mysql-5.7.22/bin/mysqld(_ZN14Rows_log_event24do_index_scan_and_updateEPK14Relay_log_info+0x218)[0xd14378]
/export/servers/app/mysql-5.7.22/bin/mysqld(_ZN14Rows_log_event14do_apply_eventEPK14Relay_log_info+0x6d0)[0xd13994]
/export/servers/app/mysql-5.7.22/bin/mysqld(_Z27slave_worker_exec_job_groupP12Slave_workerP14Relay_log_info+0x1e4)[0xd6cac4]
/export/servers/app/mysql-5.7.22/bin/mysqld(handle_slave_worker+0x2b4)[0xd504d4]
/export/servers/app/mysql-5.7.22/bin/mysqld(pfs_spawn_thread+0xf4)[0x10a4784]
/usr/lib64/libc.so.6(+0x7f320)[0xffffa8f2b320]
/usr/lib64/libc.so.6(+0xe545c)[0xffffa8f9145c]Trying to get some variables.
Some pointers may be invalid and cause the dump to abort.
Query (ffa99ce9c970): is an invalid pointer
Connection ID (thread ID): 858
Status: NOT_KILLEDThe manual page at http://dev.mysql.com/doc/mysql/en/crashing.html contains
information that should help you find out what is causing the crash.
2024-11-25T08:10:47.554095+08:00 0 [Warning] 'NO_AUTO_CREATE_USER' sql mode was not set.
2024-11-25T08:10:47.554214+08:00 0 [Note] --secure-file-priv is set to NULL. Operations related to importing and exporting data are disabled
2024-11-25T08:10:47.554246+08:00 0 [Note] /export/servers/app/mysql-5.7.22/bin/mysqld (mysqld 5.7.22-log) starting as process 41346 ...
2024-11-25T08:10:47.599043+08:00 0 [Warning] option 'innodb-buffer-pool-instances': unsigned value 128 adjusted to 64
2024-11-25T08:10:47.599739+08:00 0 [Warning] InnoDB: Using innodb_file_format is deprecated and the parameter may be removed in future releases. See http://dev.mysql.com/doc/refman/5.7/en/innodb-file-format.html
2024-11-25T08:10:47.599768+08:00 0 [Warning] InnoDB: Using innodb_file_format_max is deprecated and the parameter may be removed in future releases. See http://dev.mysql.com/doc/refman/5.7/en/innodb-file-format.html
2024-11-25T08:10:47.599859+08:00 0 [Note] InnoDB: PUNCH HOLE support available
2024-11-25T08:10:47.599871+08:00 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2024-11-25T08:10:47.599877+08:00 0 [Note] InnoDB: Uses event mutexes
2024-11-25T08:10:47.599881+08:00 0 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
2024-11-25T08:10:47.599885+08:00 0 [Note] InnoDB: Compressed tables use zlib 1.2.3
2024-11-25T08:10:47.599890+08:00 0 [Note] InnoDB: Using Linux native AIO
2024-11-25T08:10:47.623089+08:00 0 [Note] InnoDB: Number of pools: 1
2024-11-25T08:10:47.623284+08:00 0 [Note] InnoDB: Not using CPU crc32 instructions
2024-11-25T08:10:47.625617+08:00 0 [Note] InnoDB: Initializing buffer pool, total size = 328G, instances = 64, chunk size = 128M
2024-11-25T08:11:10.620091+08:00 0 [Note] InnoDB: Completed initialization of buffer pool
2024-11-25T08:11:13.781206+08:00 0 [Note] InnoDB: If the mysqld execution user is authorized, page cleaner thread priority can be changed. See the man page of setpriority().
2024-11-25T08:11:13.785464+08:00 0 [Note] InnoDB: Opened 2 undo tablespaces
2024-11-25T08:11:13.785498+08:00 0 [Note] InnoDB: 2 undo tablespaces made active
2024-11-25T08:11:13.785805+08:00 0 [Note] InnoDB: Highest supported file format is Barracuda.
2024-11-25T08:11:16.304842+08:00 0 [Note] InnoDB: Log scan progressed past the checkpoint lsn 185967007381
2024-11-25T08:11:16.426612+08:00 0 [Note] InnoDB: Doing recovery: scanned up to log sequence number 185972250112
官方说明:
https://bugs.mysql.com/bug.php?id=94699
https://dev.mysql.com/doc/relnotes/mysql/5.7/en/news-5-7-27.html
属于漏洞,已经在新版本里修复了
其他修复方案:
1、调大slave_pending_jobs_size_max
如果slave_pending_jobs_size_max的大小小于当前需要执行事件所需的内存大小
2、临时调整sync_binlog大小
当每进行n次事务提交之后,MySQL将进行一次fsync之类的磁盘同步指令来将binlog_cache中的数据强制写入磁盘
3、slave_parallel_workers
调整并行复制的参数,建议修改为cpu的核数
4、innodb_io_capacity
sas硬盘建议200,如果是nvme固态盘,建议调整为1500
相关文章:
解决InnoDB: Failing assertion: !lock->recursive
背景: 在arm服务器里运行MySQL5.7.22版本 报错信息 : 2024-11-25T08:07:36.24182508:00 856 [Note] Multi-threaded slave statistics for channel : seconds elapsed 126; events assigned 53431297; worker queues filled over overrun level 0; …...
基于微信小程序的外卖点餐系统设计与实现ssm+论文源码调试讲解
4系统概要设计 4.1概述 本系统后台采用B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式,是一个适用于Internet环境下的模型结构。只要用户能连上Internet,便可以在任何时间、任何地点使用。系统工作原理图如图4-1所示: 图4-1系统工作原…...
Helm Chart 实现 Kubernetes 应用的多环境部署与镜像更新
在现代软件开发中,通常需要将应用部署到多个环境(如开发环境、测试环境、生产环境),并且在不同环境中使用不同的配置和镜像版本。Helm Chart 提供了强大的模板化和参数化功能,可以轻松实现多环境部署和镜像更新。本文将详细介绍如何使用 Helm Chart 实现 Kubernetes 应用的…...
“腾讯、钉钉、飞书” 会议开源平替,免费功能强大
在数字化时代,远程办公和线上协作越来越火。然而,市面上的视频会议工具要么贵得离谱,要么功能受限,甚至还有些在数据安全和隐私保护上让人不放心。 今天开源君给大家安利一个超棒的开源项目 - Jitsi Meet,这可是我在网…...
我谈区域偏心率
偏心率的数学定义 禹晶、肖创柏、廖庆敏《数字图像处理(面向新工科的电工电子信息基础课程系列教材)》P312 区域的拟合椭圆看这里。 Rafael Gonzalez的二阶中心矩的表达不说人话。 我认为半长轴和半短轴不等于特征值,而是特征值的根号。…...
思科交换机telnet配置案例
目录 1.telnet简述2.网络拓扑3.设备说明4.网络配置4.1 电脑PC ip设置4.2 网络交换机telnet配置 5.小结 1.telnet简述 Telnet是远程登录服务的一个协议,该协议定义了远程登录用户与服务器交互的方式。它允许用户在一台联网的计算机上登录到一个远程分时系统中&#…...
机器学习:支持向量机
支持向量机(Support Vector Machine)是一种二类分类模型,其基本模型定义为特征空间上的间隔最大的广义线性分类器,其学习策略便是间隔最大化,最终可转化为一个凸二次规划问题的求解。 假设两类数据可以被 H x : w T x…...
人工智能前沿技术进展与应用前景探究
一、引言 1.1 研究背景与意义 人工智能作为一门极具变革性的前沿技术,正深刻地改变着人类社会的各个层面。从其诞生之初,人工智能便承载着人类对智能机器的无限遐想与探索。自 20 世纪中叶起,人工智能踏上了它的发展征程,历经了…...
(一)HTTP协议 :请求与响应
前言 爬虫需要基础知识,HTTP协议只是个开始,除此之外还有很多,我们慢慢来记录。 今天的HTTP协议,会有助于我们更好的了解网络。 一、什么是HTTP协议 (1)定义 HTTP(超文本传输协议ÿ…...
什么是网络爬虫?Python爬虫到底怎么学?
最近我在研究 Python 网络爬虫,发现这玩意儿真是有趣,干脆和大家聊聊我的心得吧!咱们都知道,网络上的信息多得就像大海里的水,而网络爬虫就像一个勤劳的小矿工,能帮我们从这片浩瀚的信息海洋中挖掘出需要的…...
NR_shell运行流程简析
nr_shell 是一套开源 shell 框架,基于框架可创建终端交互功能。 为了记录终端输入指令,以及进行解析处理,nr_shell 提供了一套 cmd 结构体,具体如下:typedef struct static_cmd_function_struct {char cmd[NR_SHELL_CM…...
CSS Fonts(字体)
CSS Fonts(字体) 在网页设计中,字体是传达信息情感和风格的关键元素。CSS(层叠样式表)提供了丰富的字体样式和属性,使得网页设计者能够根据需求选择合适的字体,从而提升用户体验。本文将详细介绍CSS字体相关的知识,包括字体的选择、加载、样式设置等。 字体的选择 选…...
基于Django的Boss直聘IT岗位可视化分析系统的设计与实现
【Django】基于Django的Boss直聘IT岗位可视化分析系统的设计与实现(完整系统源码开发笔记详细部署教程)✅ 目录 一、项目简介二、项目界面展示三、项目视频展示 一、项目简介 该系统采用Python作为主要开发语言,利用Django这一高效、安全的W…...
linux系统中的 scp的使用方法
SCP(Secure Copy Protocol)是一种通过加密的方式在本地主机和远程主机之间安全地传输文件的协议。 它是基于SSH协议的扩展,允许用户在不同主机之间进行文件复制和传输,是Linux和Unix系统中常用的工具之一。 在嵌入式Linux软件的…...
x5music3.0 admin_index.php 后台权限绕过漏洞复现(附脚本)
免责申明: 本文所描述的漏洞及其复现步骤仅供网络安全研究与教育目的使用。任何人不得将本文提供的信息用于非法目的或未经授权的系统测试。作者不对任何由于使用本文信息而导致的直接或间接损害承担责任。如涉及侵权,请及时与我们联系,我们将尽快处理并删除相关内容。 0x0…...
【单链表算法实战】解锁数据结构核心谜题——相交链表
题目如下: 解题过程如下: 相交链表只可以在中间任意位置/头/尾结点相交,如下图: 一个next指针只能指向一块地址,所以不会出现这种情况: 在返回相交链表的起始结点之前先要判断两个链表是否相交࿰…...
Crewai框架添加日志功能
一开始看官方文档以为要用callback这个注释在一个自定义函数上输出日志,结果弄半天都没有结果,最后发已经有现成的方法了(一开始搜log都没搜到这个方法) 只要添加这个output_log_file配置参数即可,由于我的项目只有一…...
【2025年数学建模美赛E题】(农业生态系统)完整解析+模型代码+论文
生态共生与数值模拟:生态系统模型的物种种群动态研究 摘要1Introduction1.1Problem Background1.2Restatement of the Problem1.3Our Work 2 Assumptions and Justifications3 Notations4 模型的建立与求解4.1 农业生态系统模型的建立与求解4.1.1 模型建立4.1.2求解…...
Linux(Centos、Ubuntu) 系统安装jenkins服务
该文章手把手演示在Linux系统下如何安装jenkins服务、并自定义jenkins数据文件位置、以及jenkins如何设置国内镜像源加速,解决插件下载失败问题 安装方式:war包安装 阿里云提供的war下载源地址:https://mirrors.aliyun.com/jenkins/war/?s…...
2013年蓝桥杯第四届CC++大学B组真题及代码
目录 1A:高斯日记(日期计算) 2B:马虎的算式(暴力模拟) 3C:第39级台阶(dfs或dp) 4D:黄金连分数(递推大数运算) 5E:前缀…...
[2025CVPR]DeepVideo-R1:基于难度感知回归GRPO的视频强化微调框架详解
突破视频大语言模型推理瓶颈,在多个视频基准上实现SOTA性能 一、核心问题与创新亮点 1.1 GRPO在视频任务中的两大挑战 安全措施依赖问题 GRPO使用min和clip函数限制策略更新幅度,导致: 梯度抑制:当新旧策略差异过大时梯度消失收敛困难:策略无法充分优化# 传统GRPO的梯…...
label-studio的使用教程(导入本地路径)
文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...
<6>-MySQL表的增删查改
目录 一,create(创建表) 二,retrieve(查询表) 1,select列 2,where条件 三,update(更新表) 四,delete(删除表…...
三维GIS开发cesium智慧地铁教程(5)Cesium相机控制
一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点: 路径验证:确保相对路径.…...
相机Camera日志实例分析之二:相机Camx【专业模式开启直方图拍照】单帧流程日志详解
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了: 这一篇我们开始讲: 目录 一、场景操作步骤 二、日志基础关键字分级如下 三、场景日志如下: 一、场景操作步骤 操作步…...
postgresql|数据库|只读用户的创建和删除(备忘)
CREATE USER read_only WITH PASSWORD 密码 -- 连接到xxx数据库 \c xxx -- 授予对xxx数据库的只读权限 GRANT CONNECT ON DATABASE xxx TO read_only; GRANT USAGE ON SCHEMA public TO read_only; GRANT SELECT ON ALL TABLES IN SCHEMA public TO read_only; GRANT EXECUTE O…...
C++八股 —— 单例模式
文章目录 1. 基本概念2. 设计要点3. 实现方式4. 详解懒汉模式 1. 基本概念 线程安全(Thread Safety) 线程安全是指在多线程环境下,某个函数、类或代码片段能够被多个线程同时调用时,仍能保证数据的一致性和逻辑的正确性…...
Android 之 kotlin 语言学习笔记三(Kotlin-Java 互操作)
参考官方文档:https://developer.android.google.cn/kotlin/interop?hlzh-cn 一、Java(供 Kotlin 使用) 1、不得使用硬关键字 不要使用 Kotlin 的任何硬关键字作为方法的名称 或字段。允许使用 Kotlin 的软关键字、修饰符关键字和特殊标识…...
VM虚拟机网络配置(ubuntu24桥接模式):配置静态IP
编辑-虚拟网络编辑器-更改设置 选择桥接模式,然后找到相应的网卡(可以查看自己本机的网络连接) windows连接的网络点击查看属性 编辑虚拟机设置更改网络配置,选择刚才配置的桥接模式 静态ip设置: 我用的ubuntu24桌…...
SQL Server 触发器调用存储过程实现发送 HTTP 请求
文章目录 需求分析解决第 1 步:前置条件,启用 OLE 自动化方式 1:使用 SQL 实现启用 OLE 自动化方式 2:Sql Server 2005启动OLE自动化方式 3:Sql Server 2008启动OLE自动化第 2 步:创建存储过程第 3 步:创建触发器扩展 - 如何调试?第 1 步:登录 SQL Server 2008第 2 步…...
