From 9a43485830d20f5104951f5288f4bdf3912067d8 Mon Sep 17 00:00:00 2001 From: "Miss Islington (bot)" <31488909+miss-islington@users.noreply.github.com> Date: Mon, 17 Mar 2025 20:46:30 +0100 Subject: [PATCH] [3.13] gh-131325: fix sendfile fallback implementation to drain data after writing to transport (GH-131376) (#131377) gh-131325: fix sendfile fallback implementation to drain data after writing to transport (GH-131376) (cherry picked from commit 94f4d87aeb4d2d7bddcb4c3aad4f62a727ac91ee) Co-authored-by: Kumar Aditya --- Lib/asyncio/base_events.py | 2 +- .../next/Library/2025-03-17-18-50-39.gh-issue-131325.wlasMF.rst | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 Misc/NEWS.d/next/Library/2025-03-17-18-50-39.gh-issue-131325.wlasMF.rst diff --git a/Lib/asyncio/base_events.py b/Lib/asyncio/base_events.py index e19a364886ab..d6f98370fd23 100644 --- a/Lib/asyncio/base_events.py +++ b/Lib/asyncio/base_events.py @@ -1292,8 +1292,8 @@ class BaseEventLoop(events.AbstractEventLoop): read = await self.run_in_executor(None, file.readinto, view) if not read: return total_sent # EOF - await proto.drain() transp.write(view[:read]) + await proto.drain() total_sent += read finally: if total_sent > 0 and hasattr(file, 'seek'): diff --git a/Misc/NEWS.d/next/Library/2025-03-17-18-50-39.gh-issue-131325.wlasMF.rst b/Misc/NEWS.d/next/Library/2025-03-17-18-50-39.gh-issue-131325.wlasMF.rst new file mode 100644 index 000000000000..6c1f64eee6ad --- /dev/null +++ b/Misc/NEWS.d/next/Library/2025-03-17-18-50-39.gh-issue-131325.wlasMF.rst @@ -0,0 +1 @@ +Fix sendfile fallback implementation to drain data after writing to transport in :mod:`asyncio`. -- 2.47.3