MagicStack / MagicStack/asyncpg
Something is setting the result on a completed task?
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
* **asyncpg version**: 0.22.0+ (at commit 075114c195e9eb4e81c8365d81540beefb46065c)
* **PostgreSQL version**: CockroachDB v20.2.3
* **Do you use a PostgreSQL SaaS? If so, which? Can you reproduce
the issue with a local PostgreSQL install?**: not a SaaS, we do our own deployments
* **Python version**: Python 3.9.1
* **Platform**: Linux
* **Do you use pgbouncer?**: no
* **Did you install asyncpg with pip?**: yes but from the git repo, to get the latest fixes
* **If you built asyncpg locally, which version of Cython did you use?**:
* **Can the issue be reproduced under both asyncio and
[uvloop](https://github.com/magicstack/uvloop)?**: for now I've seen this under uvloop
```Fatal error on transport TCPTransport
protocol:
transport:
Traceback (most recent call last):
File "uvloop/handles/stream.pyx", line 829, in uvloop.loop.__uv_stream_on_read_impl
File "/root/aurora-extract/src/asyncpg/asyncpg/connect_utils.py", line 516, in data_received
self.on_data.set_result(True)
asyncio.exceptions.InvalidStateError: invalid state```
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
Empieza en asyncpg/connect_utils.py:516, donde TLSUpgradeProto.data_received llama a self.on_data.set_result(True), y sigue cuándo se completa esa tarea bajo uvloop. Reproduce el InvalidStateError notificado con CockroachDB si es posible; se considera terminado cuando la actualización de TLS ya no intenta establecer un resultado en una tarea ya completada.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- postgresql, python
- Área
- backend, databases
- Tipo de issue
- Error
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Tranquilo
- Claridad
- Bastante claro
- Aptitud para principiantes
- 48/100