为什么 mysql 不像 percona 服务器那样实现终止空闲事务?

why don't mysql implement kill idle transaction like percona server?

Percona 服务器:

https://github.com/percona/percona-server/pull/1164

当前的 kill idle transaction 特性实现工作在较低的 InnoDB 事务列表级别,定期扫描它并杀死旧的。

Lixun Peng 建议通过设置不同的套接字读取超时值来重新实现此功能(错误 907719)。这样的实现有几个优点: - 更简单的代码,消除当前代码中的崩溃错误(错误 1166744、错误 1179136) - 适用于任何存储引擎,而不仅仅是 InnoDB。

在用户级别,引入一个新的服务器变量kill_idle_transaction。使旧的 innodb_kill_idle_transaction 变量成为已弃用的别名,将在 8.0.

中删除

在此处复制 Laurynas 的答案以便标记此问题 "answered":最好在 bugs.mysql.com/bug.php?id=67906 上提问(请注意由于他们的贡献规则,Percona 补丁无法 MySQL 直接获取)。 – Laurynas Biveinis