[bug] Potentially malformed status passes nil url to media proxy function breaking the timeline #482
Labels
No labels
approved, awaiting change
bug
configuration
documentation
duplicate
enhancement
extremely low priority
feature request
Fix it yourself
help wanted
invalid
mastodon_api
needs docs
needs tests
not a bug
planned
pleroma_api
privacy
question
static_fe
triage
wontfix
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: AkkomaGang/akkoma#482
Loading…
Reference in a new issue
No description provided.
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?
Your setup
OTP
Extra details
Ubuntu 22.04
Version
2023.02 (3.6.0-0-g71d0899)
PostgreSQL version
14.6 (Ubuntu 14.6-0ubuntu0.22.04.1)
What were you trying to do?
View my home timeine or the user who has what seems to be a malformed status. I cannot find specifcally which status it is because of the errors. The user that seems to have this bad status is from https://bird.makeup/.
What did you expect to happen?
The API calls to reutrn normally.
What actually happened?
/api/v1/accounts/{id}/statuses and /api/v1/timelines/home return 500:
Logs
Severity
I cannot use the software
Have you searched for this issue?
having this same problem on my instance right now. @floogulinc, did you figure out a workaround for this or did you just wait for the problem to go away?
... or is it still occurring?
as a temporary workaround, disabling the media proxy makes the timeline work again
the media preview proxy specifically
i think i've found the culprit. my instance has a user record in its database with a banner value of
%{"type" => "Image", "url" => [%{"href" => nil}]}
. with the media preview proxy enabled, that user's profile reliably fails to render and breaks my home timeline when a post of theirs shows up.aside: this was a major pain to debug because for some reason akkoma/phoenix wouldn't produce a full stack trace from 500's thrown while rendering the timeline, but i did get a full stack trace when visiting the users profile directly.
well the post thay was causing the problem just eventually ended up down the timeline enough to not be as much of a problem but it's still there if I scroll enough or try to view posts in the admin view. Including what you've said this seems to be a general issue when an image url is nill or perhaps another malformed value, in this case as part of a post and in your case a banner or avatar.