Kapatılmayan DB bağlantısı (ARCH2084)
Anahtar python.performance.db-connection-not-closed · Önem error · Kategori performance
connect/cursor ile açılan bir bağlantı with olmadan kullanıldığında, hata durumunda havuza geri verilmez ve bağlantı sızar. Bağlam yöneticisi kullanın.
Hatalı
Bölüm başlığı “Hatalı”def count_rows(pool): conn = pool.getconn() cur = conn.cursor() cur.execute("SELECT count(*) FROM orders") return cur.fetchone()[0]def count_rows(pool): with pool.connection() as conn, conn.cursor() as cur: cur.execute("SELECT count(*) FROM orders") return cur.fetchone()[0]Düzeltme
Bölüm başlığı “Düzeltme”Bağlantı ve imleçleri with ile açın; çıkışta havuza geri verilip kapatılsınlar.