MagicStack / MagicStack/asyncpg
Disconnection from postgres-compatible google cloud AlloyDB instance hangs
Personne n'a encore pris cette issue.
- Langage dominant
- Python
- Étoiles
- 8.1k
- Forks
- 468
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
- asyncpg version: 0.26.0
- PostgreSQL version: Google AlloyDB, postgres 14.4 compatible
- Do you use a PostgreSQL SaaS? If so, which? Can you reproduce
the issue with a local PostgreSQL install?: I cannot reproduce the issue on a local postgres, no. - Python version: 3.10
- Platform: Macos
- Do you use pgbouncer?: No
- Did you install asyncpg with pip?: Yes
- If you built asyncpg locally, which version of Cython did you use?: NA
- Can the issue be reproduced under both asyncio and
uvloop?: I have not tried to reproduce under uvloop
I am connecting to an AlloyDB instance on Google Cloud (currently, these are available for free testing). I can connect and queries run as expected. However, connection.disconnect() hangs. I cannot reproduce this behavior locally; disconnection happens as expected. Synchronous database work with psycopg2, for example, works as expected.
This code reproduces the behavior I am seeing (running through the alloydb-auth-proxy as is required):
import asyncpg
conn = await asyncpg.connect(ALLOYDB_URI)
conn.disconnect() # hangs
I'll put in a ticket with Google as well if nothing obvious turns up here.
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par l’appel à connection.disconnect() dans la reproduction fournie de AlloyDB-auth-proxy et exécutez-la avec la configuration Google Cloud AlloyDB signalée. Comparez le comportement avec une installation locale de PostgreSQL et le comportement existant de psycopg2 ; le travail est terminé lorsque la cause du blocage est identifiée et qu’asyncpg se déconnecte proprement pour cette configuration.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- gcp, postgresql, python
- Domaine
- cloud, databases
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100