Summary
Close and release the HTTP response returned by get_object() in MinioAdapter.get(), following the MinIO Python SDK guidance (response.close() + response.release_conn() in a finally block).
Prevents connection pool exhaustion when get() is called repeatedly under load.
Add unit tests covering successful reads and mid-read failures to ensure cleanup always runs.
Test plan
uv run pytest tests/unit/minio_adapter_test.py -q
uv run pytest tests/integration/minio_adapter_test.py -m integration -q
Combined coverage remains at 100%
Summary
Close and release the HTTP response returned by get_object() in MinioAdapter.get(), following the MinIO Python SDK guidance (response.close() + response.release_conn() in a finally block).
Prevents connection pool exhaustion when get() is called repeatedly under load.
Add unit tests covering successful reads and mid-read failures to ensure cleanup always runs.
Test plan
uv run pytest tests/unit/minio_adapter_test.py -q
uv run pytest tests/integration/minio_adapter_test.py -m integration -q
Combined coverage remains at 100%
Close and release the HTTP response in a finally block per SDK guidance, and add unit tests for success and read-failure cleanup.
Co-authored-by: Cursor <cursoragent@cursor.com>
brian
changed title from Fix MinIO get_object response leak in MinioAdapter.get() to [patch] Fix MinIO get_object response leak in MinioAdapter.get()2026-07-07 21:27:22 +02:00
Rerunning the job now reads the current title from the Gitea API instead of the stale pull_request event payload.
Co-authored-by: Cursor <cursoragent@cursor.com>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
Close and release the HTTP response returned by get_object() in MinioAdapter.get(), following the MinIO Python SDK guidance (response.close() + response.release_conn() in a finally block).
Prevents connection pool exhaustion when get() is called repeatedly under load.
Add unit tests covering successful reads and mid-read failures to ensure cleanup always runs.
Test plan
uv run pytest tests/unit/minio_adapter_test.py -q
uv run pytest tests/integration/minio_adapter_test.py -m integration -q
Combined coverage remains at 100%
Test Coverage Report:
Fix MinIO get_object response leak in MinioAdapter.get()to [patch] Fix MinIO get_object response leak in MinioAdapter.get()Test Coverage Report: