如果使用 psycopg2.pool 获取了一个 connection,发现 connection.closed 的值不是 0,表示连接已经关闭,这时候应该释放该连接,并重新获取一个新的连接。可以使用 try-except 语句来捕捉该异常并进行相应的处理,例如:

import psycopg2.pool

# 创建连接池
pool = psycopg2.pool.SimpleConnectionPool(1, 10, dsn)

# 获取连接
conn = pool.getconn()

# 检查连接是否关闭
if conn.closed != 0:
    # 释放连接
    pool.putconn(conn)
    # 获取新的连接
    conn = pool.getconn()
Psycopg2 连接池:处理连接关闭异常

原文地址: https://www.cveoy.top/t/topic/oRdP 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录