Mysql、休眠 slow_query_log 日志设置时间戳

Mysql, hibernate slow_query_log logs set timestamp

我正在 运行 对 java 应用程序进行负载测试,该应用程序在 DAO 层中使用休眠框架。我在慢查询日志中发现了好几处 following。

# Time: 170704 15:06:47
# User@Host: user[user] @ localhost [127.0.0.1]  Id:   163
# Query_time: 0.428159  Lock_time: 0.000000 Rows_sent: 0  Rows_examined: 0
SET timestamp=1499161007;
commit;

我在 Cent OS 上使用 mysql Ver 14.14 Distrib 5.1.73, for redhat-linux-gnu (x86_64) using readline 5.1。 EhCache 已被用作某些实体的休眠缓存提供程序。我在我的应用程序中使用 3GB inno_db_buffer_pool_size 用于 199.6MB 数据库和 32-64 个池 mysql 连接。此外,服务器有 16GB 的总 RAM,应用程序 JVM 配置为使用 4GB 堆。

我找到了 this 写于 2007 年的文章。我不确定休眠是否涉及调用 NOW() 或任何其他问题导致我的情况发生。任何类似的事情都没有在代码中明确地完成。知道此日志行的根本原因吗?

根据this Whosebug questioncommit;的说法是慢查询日志中有这条记录的原因。 SET timestamp=1499161007; 已在获取统计详细信息之前执行。

我还需要找出在花费很长时间提交的事务中执行了哪些查询。深入挖掘我发现 mysql 查询日志和可以使用此问题中提供的 suggestions