Yesod / Persistent没有关闭数据库连接

时间:2017-12-27 10:21:31

标签: postgresql haskell yesod haskell-persistent

我有一个使用Yesod和Persistent的网络应用。我使用默认的脚手架Foundation.hsApplication.hs。我编写了一个处理本地JSON文件的函数,然后在JSON文件中的每个项目的几个表中插入一行。所以它将会执行1000多次插入。

在GHCI中运行该功能,它成功保存了一些行,然后出现以下错误:

libpq: failed (FATAL: sorry, too many clients already)

使用postgres查询:

select * from pg_stat_activity where datname = 'mydb-name'

我可以看到我的应用程序创建了100个空闲连接但未关闭。然后我需要杀死这些连接以便能够做任何事情。

INSERT查询完成后,是否应该永久关闭这些连接?我需要做些什么不同的事情?

0 个答案:

没有答案