小更新使挂起问题

时间:2018-07-11 00:58:15

标签: postgresql sql-update hang

PostgreSQL 9.5。

很小的更新SQL很长时间像挂起一样使用很高的CPU。 我的Windows控制台应用程序使用简单的UPDATE语句来更新最新时间,如下所示。

UPDATE META_TABLE SET latest_time = current_timestamp WHERE host = 'MY_HOST'

只有2个控制台应用程序在SQL之上发布。

  • 在META_TABLE上没有索引。
  • 仅1行。
  • 挂起时,没有锁信息。
  • 未记录表。
  • pg_stat_activity中的空闲状态
  • 在更新后提交。

在挂起期间,我可以使用上表插入或删除数据。 启动应用程序后,大约20分钟后,就会发生此问题。 我认为这不是SQL语句或表结构问题,可能是数据库方面的问题。

您能想出什么办法解决此问题吗?

更新

控制台应用程序中有2个数据库连接。 1(用于选择)和1(用于DML)。 我尝试每2分钟关闭DML DB连接。然后,我还没有看到这个问题!但是,挂起问题发生在SELECT语句(也很简单的SELECT)上。 每个会话似乎有一些限制。 现在,我还要每3分钟关闭一次Select db连接并进行监视。

0 个答案:

没有答案