<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/postgresql-adapter-for-python-r6rqtr1mz" -->

---
title: PostgreSQL adapter for Python | daily.dev
description: Psycopg 2.8.1 and 2.8.2 were released, fixing several bugs from the 2.8 release including an async cursor polling error, RealDictCursor issues with repeated...
canonical: https://daily.dev/posts/postgresql-adapter-for-python-r6rqtr1mz
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: PostgreSQL adapter for Python | daily.dev
og:description: Psycopg 2.8.1 and 2.8.2 were released, fixing several bugs from the 2.8 release including an async cursor polling error, RealDictCursor issues with repeated...
og:url: https://daily.dev/posts/postgresql-adapter-for-python-r6rqtr1mz
og:image: https://api.daily.dev/og/posts/R6RQTr1Mz.png
og:image:alt: PostgreSQL adapter for Python
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# PostgreSQL adapter for Python

**[Psycopg](https://daily.dev/sources/psycopg)** · 1 min read · 0 upvotes · 0 comments

## Summary

Psycopg 2.8.1 and 2.8.2 were released, fixing several bugs from the 2.8 release including an async cursor polling error, RealDictCursor issues with repeated columns, and RealDictRow modifiability. The notable change in 2.8.2 is that binary packages now ship with OpenSSL 1.1.1b instead of 1.0, fixing connection concurrency problems on both Windows and Linux.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://www.psycopg.org/articles/2019/04/14/psycopg-281-282-released>

## Questions this post answers

### Why does psycopg2 have connection concurrency problems on Windows and Linux?

Concurrency problems on connection in psycopg2 were caused by binary packages being built against OpenSSL 1.0. Starting with psycopg2 2.8.2, binary packages ship with OpenSSL 1.1.1b instead, which fixes these concurrency issues on both Windows and Linux, addressing tickets #543 and #836.

_Track dependency changes like this OpenSSL bump on daily.dev before they cause production surprises._

### What bugs were fixed in psycopg2 2.8.1 and 2.8.2?

Psycopg2 2.8.1 and 2.8.2 fixed a 'no async cursor' error when polling a connection with no cursor, a RealDictCursor bug affecting queries with repeated column names, and a RealDictRow modifiability issue, alongside the OpenSSL 1.1.1b upgrade for binary packages that resolved connection concurrency problems.

_Follow psycopg2 patch details on daily.dev when debugging PostgreSQL connection issues in Python._

---

Tags: [#python](https://daily.dev/tags/python), [#postgresql](https://daily.dev/tags/postgresql), [#cryptography](https://daily.dev/tags/cryptography)

[View this post on daily.dev](https://daily.dev/posts/postgresql-adapter-for-python-r6rqtr1mz)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"PostgreSQL adapter for Python","url":"https://daily.dev/posts/postgresql-adapter-for-python-r6rqtr1mz","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/postgresql-adapter-for-python-r6rqtr1mz"},"datePublished":"2026-08-23T12:22:09.417Z","dateModified":"2026-08-23T12:44:06.555Z","description":"Psycopg 2.8.1 and 2.8.2 were released, fixing several bugs from the 2.8 release including an async cursor polling error, RealDictCursor issues with repeated...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/b0cbd2ac8948f96ab39fa6a90db7464f?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/b0cbd2ac8948f96ab39fa6a90db7464f?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Psycopg","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Psycopg","logo":"https://media.daily.dev/image/upload/s--5N-KNNWk--/f_auto,q_auto/v1787487485/logos/psycopg?_a=BAMAMicg0","url":"https://daily.dev/sources/psycopg"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/postgresql-adapter-for-python-r6rqtr1mz","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"python,postgresql,cryptography","timeRequired":"PT1M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Psycopg","item":"https://daily.dev/sources/psycopg"},{"@type":"ListItem","position":3,"name":"PostgreSQL adapter for Python"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/postgresql-adapter-for-python-r6rqtr1mz#faq","mainEntity":[{"@type":"Question","name":"Why does psycopg2 have connection concurrency problems on Windows and Linux?","acceptedAnswer":{"@type":"Answer","text":"Concurrency problems on connection in psycopg2 were caused by binary packages being built against OpenSSL 1.0. Starting with psycopg2 2.8.2, binary packages ship with OpenSSL 1.1.1b instead, which fixes these concurrency issues on both Windows and Linux, addressing tickets #543 and #836. Track dependency changes like this OpenSSL bump on daily.dev before they cause production surprises."}},{"@type":"Question","name":"What bugs were fixed in psycopg2 2.8.1 and 2.8.2?","acceptedAnswer":{"@type":"Answer","text":"Psycopg2 2.8.1 and 2.8.2 fixed a 'no async cursor' error when polling a connection with no cursor, a RealDictCursor bug affecting queries with repeated column names, and a RealDictRow modifiability issue, alongside the OpenSSL 1.1.1b upgrade for binary packages that resolved connection concurrency problems. Follow psycopg2 patch details on daily.dev when debugging PostgreSQL connection issues in Python."}}]}
```

