MagicStack / MagicStack/asyncpg
How to remove log listeners for a pool:ed connections.
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Python
- Estrellas
- 8.1k
- Forks
- 468
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
According to the documentation the setup callback is where you should do stuff like add log listeners to the connection. It works fine but when the connection is release back to the pool I get a warning that it still have a active log listener, which is correct but misleading.
- How/where should I remove the log listener?
- Is there a
releasecallback somewhere that I have missed? - I see that the warning is made using the
warningspython api. I can just silence it but that might hide actual errors.
Example code:
pool = await asyncpg.create_pool(
user='postgres',
setup=lambda conn: conn.add_log_listener(_log_test),
)
After I have checked out a connection and released it back this gets printed to stdout/err:
/opt/python3.7/lib/python3.7/site-packages/asyncpg/connection.py:1295: InterfaceWarning: <wild.database.LeaderConnection object at 0x7f006d4e1208> is being released to the pool but has 1 active log listener
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Comienza con la documentación del connection pool y el comportamiento del callback de configuración descrito en el issue. Inspecciona asyncpg/connection.py alrededor de la línea 1295 para entender la advertencia sobre listeners activos y sigue el proceso de liberación de las conexiones. Se considera terminado cuando el ciclo de vida de los listeners está claro y se ha corregido la advertencia engañosa o el mecanismo de liberación que falta, sin ocultar advertencias no relacionadas.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- postgresql, python
- Área
- databases
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 35/100