mirror of
https://github.com/open-webui/open-webui.git
synced 2026-07-16 23:21:44 -05:00
[GH-ISSUE #24559] issue: "Not enough data to satisfy transfer length header." error interrupts responses #107327
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @andscape-dev on GitHub (May 11, 2026).
Original GitHub issue: https://github.com/open-webui/open-webui/issues/24559
Check Existing Issues
Installation Method
Docker
Open WebUI Version
v0.9.5
Ollama Version (if applicable)
No response
Operating System
MacOS Sonoma
Browser (if applicable)
Zen Browser 1.19.12b (Firefox 150.0.2) (aarch64)
Confirmation
README.md.Expected Behavior
I submit a prompt, the response starts generating and completes successfully.
Actual Behavior
The response continues for a variable amount of tokens before interrupting with the following UI error:
Re-generating the response incurs in the same error. The logs show a similar error:
Just once, no other relevant error log can be found around it.
Steps to Reproduce
Details:
open.bigmodel.cnOpenAI-compatble endpoint), with streaming and native function calling enabled.Logs & Screenshots
UI error:
Logs snippet, redacted:
Additional Information
The failures don't seem deterministic, so could be provider instability causing connections to drop, but I can use the same provider just fine with the same subscription on other clients.
@owui-terminator[bot] commented on GitHub (May 11, 2026):
🔍 Related Issues Found
I found some existing issues that might be related. Please check if any of these are duplicates or contain helpful solutions:
🟣 #12021 issue: ClientPayloadError: Response payload is not completed: TransferEncodingError
This issue reports the same aiohttp/TransferEncodingError message: 'Response payload is not completed: <TransferEncodingError... Not enough data to satisfy transfer length header.>' It appears to be the closest direct match to the error in the new report, though on an older version and a different upstream provider.
by poonesh ·
bug🟣 #13474 SSE streaming in Open WebUI API Endpoints (Chat Completions) fails to handle incomplete chunks
This issue is about Open WebUI's streaming/chat-completions handling and incomplete SSE chunks. While the root cause differs, it is closely related to response streaming breakage in the same code path and may help if the new error is caused by truncated streamed responses.
by hide212131 ·
bug💡 If your issue is a duplicate, please close it and add any additional details to the existing issue instead.
This comment was generated automatically. React with 👍 if helpful, 👎 if not.
@Classic298 commented on GitHub (May 11, 2026):
This is likely not an error from open webui side. Can you reproduce it on older versions? This looks like an upstream error from the provider. This error message doesn't exist in open webui
@andscape-dev commented on GitHub (May 11, 2026):
As I said I don't have a backup for pre-v0.9.3, so I can't easily rollback further due to the breaking migrations in v0.9.3. I'm gonna try to set up a test instance with v0.9.2 as soon as I have the time.
The error is coming from
aiohttp: https://github.com/aio-libs/aiohttp/issues/4630. It might be caused by an upstream provider error, but again I'm using the same provider with the same configuration from other clients without issue.@andscape-dev commented on GitHub (May 17, 2026):
I'm now convinced that AIOHTTP is not respecting the timeout setting, and dropping the connection mid-response stream after ~30s. I have the same behavior using models from self-hosted Ollama and in the Ollama logs there is no error, just a POST to "/api/chat" with duration of almost exactly 30s, every time. OpenWebUI is terminating the stream prematurely after 30s, and then interpreting the truncated stream as a malformed response. I have explicitly set
AIOHTTP_CLIENT_TIMEOUTto hundreds of seconds, but the stream still gets terminated after 30. Setting it to''for no timeout makes no difference.