psycopg2.pool.PoolError: connection pool exhausted
psycopg2.pool 数据库连接池用完的两种情况:
- sql报错, 导致数据库的链接putconn失败, 没有将conn添加到数据连接池中
- 真的有那么连接建立, 假设连接池有100个数据库连接, 同时有101个查询需要链接,这时候肯定是会报链接池用完的, 这时候加连接池数量跟数据库连接数就可以了
问题1: 出现的原因, 查询报错, 添加conn回连接池失败
源码:self._pool.append(conn) 将这个连接重新添加到pool中
def _putconn(self, conn, key=None, close=False):"""Put away a connection."""if self.closed:raise PoolError("connection pool is closed")if key is None:key = self._rused.get(id(conn))if key is None:raise PoolError("trying to put unkeyed connection")if len(self._pool) < self.minconn and not close:# Return the connection into a consistent state before putting# it back into the poolif not conn.closed:status = conn.info.transaction_statusif status == _ext.TRANSACTION_STATUS_UNKNOWN:# server connection lostconn.close()elif status != _ext.TRANSACTION_STATUS_IDLE:# connection in error or in transactionconn.rollback()self._pool.append(conn)else:# regular idle connectionself._pool.append(conn)# If the connection is closed, we just discard it.else:conn.close()
解决方案: 加个try … except … finally就OK
psycopg2.pool.PoolError: connection pool exhausted相关推荐
- Cannot get a connection, pool exhausted, cause: ValidateObject failed
连接池突然不能使用了,重启应用仍然报连接池耗尽,最后debug发现是有人创建了dual表,导致校验语句select 1 from dual返回值为空,而无法通过连接池的连接校验. Caused by: ...
- com.atomikos.jdbc.AtomikosSQLException: Connection pool exhausted
异常: 2020-01-09 18:30:48.072 ERROR 10212 --- [nio-8080-exec-2] o.a.c.c.C.[.[.[/].[dispatcherServlet] ...
- .Net与Oracle地数据库连接池(Connection Pool)
.Net与Oracle的数据库连接池(Connection Pool) 概述: 数据库连接池允许应用程序重用已存在于池中的数据库连接,以避免反复的建立新的数据库连接.这种技术能有效提高应用程序的伸缩性 ...
- java.lang.IllegalStateException: Connection pool shut down
最近使用HttpClient 4.5 使用 CloseableHttpClient 发起连接后,使用CloseableHttpResponse 接受返回结果,结果就报错了,上网查了下,有位stacko ...
- Cannot get a connection, pool error Timeout waiting for idle object (获取不到数据库连接)...
今天项目中遇到一个问题,一个定时器一段时间就会报错,一段时间又正常,错误如下: Caused by: org.hibernate.exception.GenericJDBCException: Can ...
- Connection pool shut down http请求异常关闭
本人在项目运用中写了一个数据推送的组件,需要多线程频繁调用远程接口进行传输数据,远程请求通过HttpClient 使用 CloseableHttpClient 发起连接后,使用CloseableHtt ...
- 多线程下httpClient报错 Connection pool shut down
报错信息 1.报错信息:Connection pool shut down java.lang.IllegalStateException: Connection pool shut downat o ...
- 阿里oss上传,读取报错:Connection pool shut down
Connection pool shut down报错: 今天springboot配置了阿里oss配置类:就一直报错: com.aliyun.oss.ClientException: Connecti ...
- 数据库连接池 Connection Pool 是什么,做什么
重新拾起Java来学,就遇到了一本不错的书<Hibernate 深入浅出>电子工业出版社,相较其他的工具类书,本书中用词更加生动活泼,从字句之间就可以看出作者的用心与深厚的文字功底,让人相 ...
最新文章
- c语言中小数乘法怎样写程序,四年级下册lbrack;小数乘法rsqb;知识点归纳
- 再遭质疑:Chrome、Safari自动填信息可能会泄密
- 在ECSHOP分类列表页中调用商品货号
- [crypto]-05.1-PKCS PKCS#1 PKCS#7 PKCS#11的介绍
- 详解JavaScript中void语句的使用
- 4. time datetime 时间模块
- NumPy快速入门--形状操作
- 初学者入门知识图谱必看的能力:推理
- mysql pxc 报错_登录mysqlpxc报错找不到库文件libreadline.so.7
- Linux 一切皆文件认知
- JDK源码解析--Object类
- 采用HTML5之“data
- python命令行tab实例小妙招
- ionic3 教程(一)安装和配置
- 金蝶云苍穹平台初级开发工程师认证考试
- Python matplotlib画图表
- 【源码之下无秘密】ArrayList:在内存只有10M的空间中申请一块5M的数组空间,会导致OOM吗?
- 九宫格拼图android代码,Android 多图上传后将图片进行九宫格展示的实例代码
- python语音唤醒功能_百度语音识别 语音唤醒失败
- could not find java in ES_JAVA_HOME at /root/opt/elastic/elasticsearch-8.1.2/jdk/bin/java
热门文章
- python控制机器人走8字_爱,死亡和机器人 第十四集 齐马蓝 中文字幕(Python处理utf8文件获取想要的内容)...
- 真正可用的获取任意进程的内存使用率 和任务管理器一模一样
- RK3399平台开发系列讲解(高速设备驱动篇)6.45、蓝牙系统架构
- PLA 3D打印件脆弱怎么办?
- 单片机:AT89s52 定时器 time0
- Elasticsearch-head-master配置 (与es连接)
- 使用linux的gpio点亮imx6ull的led灯
- i.MX6ULL GPIO
- SpringBoot banner图样
- 职称计算机考试时的输入法,2017年高级职称计算机预习:输入法的使用