mirror of
https://github.com/open-webui/open-webui.git
synced 2026-07-15 21:19:39 -05:00
issue: #6665
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 @wolfdevmail on GitHub (Oct 13, 2025).
Check Existing Issues
Installation Method
Docker
Open WebUI Version
v0.6.33
Ollama Version (if applicable)
No response
Operating System
Debian 12
Browser (if applicable)
No response
Confirmation
README.md.Expected Behavior
When uploading a file that cannot be processed, either the upload should be refused, or if accepted, should not stall on loading.
Actual Behavior
When we upload a file, i.e. video files, which are not currently specified to be processed in routers/files.py:process_uploaded_file, the upload succeeds, however, status is never updated for the unprocessed file, because it does not go into either of the if else cases. This leads to issue in get_file_process_status leading to non 200 response after a stall time.
The request to /api/v1/files/.../process/status?stream=true, after 1 min pending time, even for tiny files (because it is irrelevant here), fails with code 500.
It would appear as network latency, or file taking time to upload, but in fact file is already uploaded, the status "pending" of the file, since it was not processed, is the actual issue.
Steps to Reproduce
Start with default config.
Using llama3.2:1b (in my specific test, but probably irrelevant).
Upload video file which is not webm.
While we see the file upload loading, right click, inspect, check the request /api/v1/files/.../process/status?stream=true it would say "pending".
Logs & Screenshots
no console/docker logs available, both irrelevant and do not contain anything.
<html> <head> </head>This happens on backend, the visible results on the front end are:
request:
GET https://{redacted}/api/v1/files/{file_id}/process/status?stream=true (which is sent after the file upload starts)
response (after 1 min):
Error
Sorry, but something went wrong.
</html>Additional Information
Please note that I understand "we do not need to upload these files if local agent cannot process their contents".
In my implementation, I fixed this by editing routers/files.py inside function process_uploaded_file:
After the code:
elif (not file.content_type.startswith(("image/", "video/"))) or (
request.app.state.config.CONTENT_EXTRACTION_ENGINE == "external"
):
process_file(request, ProcessFileForm(file_id=file_item.id), user=user)
I added:
elif file.content_type.startswith(("image/", "video/")):
log.info(f"Forcing process for {file.content_type}, better fail than stall!")
process_file(request, ProcessFileForm(file_id=file_item.id), user=user)
A safer alternative would be either to change the get_file_process_status to respond differently for this specific case, or to edit process_uploaded_file to take into considerations all possibilities, and if we cannot process the file, we can still make a fake "done" status with content "Unable to process, ... "
@silentoplayz commented on GitHub (Oct 13, 2025):
Please add a title to your issue.