7,941 questions
2
votes
1
answer
81
views
How can I create a tool for langgaph's agent to save data in db?
I created an agent using Langgraph in Python, and I developed a tool for them to save a todo in a database. But that tool doesn't work and raises an error!
I use SQLAlchemy to connect to the DB.
This ...
0
votes
0
answers
31
views
FastAPI WebSocket + Kafka: Only the last connected client receives messages [closed]
I'm building a real-time dashboard using FastAPI WebSockets + Kafka. Everything works perfectly for a single user, but when multiple users connect, only the most recently connected user receives ...
0
votes
1
answer
54
views
Monitor `asyncio.create_subprocess_exec` pipes for errors
I am trying to pipe multiple Linux commands and abort if there is an error. With Popen the communicate() method waits for all commands to finish. This is why I am trying asyncio now.
I have the ...
0
votes
1
answer
82
views
I have two simple Python functions with time.sleep and reading data so I/O-bound but I don't get expected behavior from threading and asyncio
Previously I had a question on an example of multiprocessing which you can see in the following link
I used a 2 workers pool to split a sum in a function with Python multiprocessing but the timing ...
2
votes
1
answer
75
views
Can't use lock around gather in Python asyncio
For some reason, this code doesn't work on Ubuntu 20, Python 3.8.10, unless the .gather line is commented out.
It works on Ubuntu 24, Python 3.12.3 and Windows 11, Python 3.13.9.
It doesn't work on ...
1
vote
1
answer
55
views
how to make socket server propagate exceptions up to TaskGroup where they're started from?
How to make exceptions thrown from a socket server running in a task group task be propagated up to its parent TaskGroup? With given example, I'd expect to see the error raised from ...
3
votes
2
answers
85
views
Python asyncio.gather returning Future attached to differnt loop exception
I am using Python 3.13.2.
I am going through the Python asyncio tutorial here. At around 10:20 timestamp, the instructor shows an example of asyncio.gather with a coroutine accepting a Future.
Here is ...
1
vote
0
answers
80
views
How to use multiprocessing with an asyncio process and a command line subprocess?
How would I be able to start a multiprocess when one of the tasks uses Asyncio and another task uses a subprocess to run?
Here is the main function:
import asyncio
import aioprocessing
import ...
Best practices
0
votes
2
replies
76
views
Python AsyncIO Graceful shutdown
No matter how much I search (or maybe I'm searching incorrectly), I can't find a decent way to terminate my tasks in Python AsyncIO.
I know what:
- I need to bind to signals (SIGINT, SIGTERM) using ...
2
votes
1
answer
65
views
Long running asyncio tasks freeze after ~1 hour. How can I debug?
I have a long running Python application built on asyncio. It launches several background tasks that run indefinitely and occasionally performs CPU work using asyncio.to_thread. Everything works fine ...
Advice
1
vote
5
replies
147
views
How does Python differentiate between async function calls and actual I/O operations?
I understand that:
await some_async_function() doesn't yield control - it just calls the function synchronously
await some_io_function() DOES yield control to the event loop
But what's the actual ...
5
votes
2
answers
123
views
How much longer will an asyncio task sleep?
I have a long running task which is executing a coroutine that calls asyncio.sleep() with a large value.
In another task I need to know how much longer the long task will sleep. I can get the long ...
0
votes
1
answer
98
views
Parallelize asynchronous API calls in Python
I’m building a data ingestion pipeline in Python that collects data from a third-party REST API.
The API allows a maximum of 100 requests per minute, and I need to fetch data for tens of thousands of ...
2
votes
1
answer
101
views
Asynchronous listening and processing in a Pyside app
I am having difficulties integrating asyncio with Pyside.
What I want to acheive:
I have several emitters (up to 30) sending messages independently every few milliseconds (200ms) in multicast.
I have ...
1
vote
1
answer
110
views
Why are my asyncio HTTP requests not overlapping as expected for I/O?
I'm trying to make a bunch of HTTP GET requests to different endpoints of the same API. My understanding is that asyncio helps me manage concurrent I/O operations efficiently, meaning when one network ...
4
votes
1
answer
93
views
TaskGroup in Python 3.11 freezes if one task raises an exception - is it a known bug?
There are two tasks in a task group. One of them raises, the other one should be cancelled. This works fine in Python 3.12+, but freezes in Python 3.11. Older versions did not support task groups.
Is ...
1
vote
0
answers
107
views
Python Asyncio: Timed out during opening handshake
I keep getting a timeout error which I can't currently explain. I'm new to networking in Python, but I can create and interact with example websocket code. For some reason the code below hits a ...
2
votes
1
answer
65
views
Scrapy Playwright freezes after initialization ([scrapy.middleware] INFO: Enabled item pipelines:[‘carscraper.pipelines.PostgreSQLPipeline’])
After starting a spider, there is the problem with freezing on a stage when pipeline must enable. There is no errors, just scrapy-playwrigth script, but it stopes on beggining before even starts ...
7
votes
2
answers
361
views
Why does multiprocess with "fork" fail under Python 3.14 but work in 3.13 (works only with "spawn" and "forkserver")?
The following code works fine on Python 3.13, but fails on Python 3.14 with a RuntimeError related to asyncio tasks.
If I switch the multiprocessing start method from "fork" to "spawn&...
1
vote
1
answer
73
views
FastAPI + pytest: RuntimeError: Event loop is closed when testing logout with AsyncClient
I'm testing a FastAPI application with asynchronous endpoints using pytest and httpx.AsyncClient. I have an endpoint /logout that depends on a JWT token from cookies and uses some async dependencies.
...
-2
votes
1
answer
57
views
Weird errors while trying to connect to Mega.NZ from Python via https://pypi.org/project/mega.py/ [closed]
I'm trying to connect to Mega.NZ via module https://pypi.org/project/mega.py/ with this code:
#!/usr/bin/env python3
from mega import Mega
mega = Mega()
m = mega.login("my mail", "my ...
-2
votes
1
answer
129
views
Use decorator to remove await prefix
I am working with Asyncio in an app I am making. However, I find it daunting to prefix my function calls with await.
So I want to encapsulate it in a decorator that adds the wait to the function call.
...
0
votes
1
answer
115
views
python REPL: is it possible to combine -i and -m asyncio?
I was trying to start the asyncio REPL (python -m asyncio) and to execute a script before starting the interactive REPL (python -i ./script.py). I tried re-ordering of options, the end-of-options ...
2
votes
2
answers
96
views
Why is asyncio.gather returning results in a different order than my tasks?
I’m learning about asynchronous programming in Python and testing with asyncio.
import asyncio
import random
async def worker(name):
delay = random.randint(1, 3)
await asyncio.sleep(delay)
...
0
votes
2
answers
111
views
asyncio.run with SQLAlchemy asyncio sessions works only once, then raises "Future attached to a different loop" and "another operation is in progress"
I’m running into an issue when using asyncio.run together with SQLAlchemy (async) inside a Celery task.
When I call the function the first time, it works fine.
On the second call, I get:
RuntimeError: ...
0
votes
1
answer
46
views
How to make Open FGA Async Client work with Flask + Gunicorn?
class FGAClientWrapper:
"""
A synchronous, gevent-friendly wrapper for the async OpenFGA SDK.
"""
def __init__(self, call_timeout: float | None = 10.0):
...
2
votes
2
answers
156
views
How to safely check a multiprocessing.Event in an asyncio loop without blocking?
I'm working on an asynchronous server using asyncio, but I need to monitor a multiprocessing.Event (used to signal termination from another process) inside my async event loop. Here's the simplified ...
4
votes
3
answers
250
views
Pytest in FastAPI + Postgres results in: <sys>:0: RuntimeWarning: coroutine 'Connection._cancel' was never awaited
I'm writing tests for my fastapi application that uses asynchronous posgtres connection:
# backend/database/session.py
from sqlmodel import SQLModel
from sqlmodel.ext.asyncio.session import ...
1
vote
2
answers
86
views
coroutine was never awaited with asyncio.TaskGroup
In the following code snippet, runner takes an optional semaphore. If this semaphore is provided, then all coroutines will be wrapped to handle entering the semaphore's context manager.
If I raise an ...
1
vote
4
answers
97
views
Why only creating a task will run the coroutine in python?
There is something I can't understand in this code
import asyncio
async def fetch_data(param):
print(f"Do something with {param}...")
await asyncio.sleep(param)
print(f"Done ...
2
votes
1
answer
130
views
Threading or asyncio for serial communications?
I'm running some serial commands to test connected devices under test (DUTs), & we have a need to run these in parallel/concurrently to speed up our tests. I would like some feedback on which ...
4
votes
3
answers
180
views
What happens if __del__ is defined as an async def coroutine in Python (CPython 3.12)?
I'm experimenting with asynchronous patterns in Python and was curious what happens if I define a __del__ method using async def in Python 3.12.
For example:
class MyClass:
async def __del__(self):...
0
votes
1
answer
240
views
How to run LlamaIndex ReAct agent with gpt-oss? Getting "SyntaxError: 'async for' outside async function"
I am trying to create a ReAct agent in LlamaIndex using a local gpt-oss-20b model.
I have successfully loaded my local model using HuggingFaceLLM from llama_index.llms.huggingface and it seems to be ...
2
votes
1
answer
89
views
Fetch data concurrently within for loop using asnycio
I would like to optimize my current function called process_coordinates.
import asyncio
from aiohttp import ClientSession
from tqdm.asyncio import tqdm
import pandas as pd
from streetlevel import ...
0
votes
1
answer
71
views
How to determine which asyncio task a program is hanging in
I have a maddening bug that makes it look like my code is hanging inside an asyncio.sleep() call. ie.
while condition:
print("Before Sleep")
await asyncio.sleep(0)
print("...
1
vote
0
answers
78
views
How to implement non-blocking async checks between turns in Pipecat Flows (0.0.18)?
I’m working with the latest version of Pipecat and Pipecat Flows (0.0.18), and I’m trying to implement a pattern where the bot can continue interacting with the user while an async background task ...
0
votes
1
answer
607
views
Discord voice WebSocket 4006 "Session is no longer valid" error with Nextcord (classic prefix command)
I’m developing a Discord bot in Python using Nextcord, with classic prefix commands. I want the bot to join a voice channel when a user sends a command.
However, when running the voice join command, ...
4
votes
3
answers
397
views
How to limit asyncio HTTP requests to N per second while processing results immediately?
How can I throttle API requests in Python’s asyncio so that no more than 5 requests are sent per second, while still processing results as soon as they arrive?
I’m working with an asynchronous HTTP ...
0
votes
1
answer
100
views
asyncio.run() raise "RuntimeError: Event loop is closed" in a Jupyter Notebook
I'm trying to run an async function inside a Jupyter Notebook using asyncio.run() like this:
import asyncio
async def my_task():
await asyncio.sleep(1)
return "Done"
asyncio.run(...
3
votes
1
answer
85
views
How to avoid double checks with asyncio.Lock
I have a piece of code, that checks if the redis db has data updates and loads them to the memory. I want only one corouitine to execute this load.
class MyService:
def __init__(self):
...
0
votes
0
answers
131
views
Input audio from microphone not collected when audio is reproduced
I'm developing a simple real-time voice bot using the OpenAI real-time API, specifically integrating with Semantic Kernel. The code is written in an async manner, and it initially works well. However, ...
1
vote
0
answers
100
views
NotImplementedError using chess.engine.SimpleEngine.popen_uci in Jupyter Notebook
All versions are up to date:
Windows 11,
Python 3.13.5,
Jupyter:
IPython : 9.4.0
ipykernel : 6.30.0
ipywidgets : not installed
jupyter_client : 8.6.3
jupyter_core : 5.8.1
...
2
votes
1
answer
236
views
Using Asyncio for downloading big files: 10 times slower than threading
The goal is to download images from the URLs asynchronously.
Here is the code for threading, which works fine:
import requests
import threading
import os
import time
import concurrent.futures as ...
0
votes
1
answer
82
views
AsyncSSH Basic SFTP Server permission error - connection fails
I'm trying to implement a very basic sftp server in python with asyncssh to be used during a unittest. I want to use a custom path to set the root of the sftp server and it would be better to set a ...
2
votes
0
answers
177
views
Unexpected Memory Leak in Python's asyncio When Using contextvars with Nested TaskGroups
I'm encountering a subtle memory leak in a Python 3.12 application using asyncio, specifically when combining contextvars with deeply nested TaskGroup structures. The issue only appears under high ...
0
votes
1
answer
106
views
python asyncio: allow user to choose fire-and-forget vs blocking-group-of-functions
I'd like to send an http request, and then operate on its response:
import requests
s=requests.Session()
....
(session setup...)
....
(url and params setup...)
....
r=s.get(url,params=params)
print('...
3
votes
1
answer
77
views
How to handle an asyncio Python library and may be called both from CLI and a Jupyter Notebook?
So I have a custom library, packaged with setuptools. In essence, it is a library that sends a lot of tasks to an API in parallel, thus concurrency is used with asyncio. So far, everyone has been ...
3
votes
1
answer
60
views
Python async issue with PhaseMap package
PhaseMap is a python package I am trying to use, but the minimal working example in the tutorial isn't working:
import phasemap as pm
def phase(pos):
x, y = pos
return int(x**2 + y**2 < 1)
...
0
votes
0
answers
85
views
How can I trigger CVE-2024-30251 (aiohttp multipart/form-data DoS) with a minimal POC script? [Need a simple concrete example]
I am trying to reproduce CVE-2024-30251, a denial-of-service vulnerability in aiohttp (Python async web framework) that affects versions prior to 3.9.4. According to the advisories, this vulnerability ...
4
votes
2
answers
2k
views
FastMCP client timing out while initializing the session
I am running a simple FastMCP server locally via the following server side code:
from mcp.server.fastmcp import FastMCP
server = FastMCP(
name="Example-FastMCP",
streamable_http_path=...