hometown-fork/hometown

500 when fetching a Review from Bookwyrm instance to Hometown

futzle opened this issue · 1 comments

Steps to reproduce the problem

  1. On a Hometown instance, search by URL for a review on a Bookwyrm instance, e.g. https://outside.ofa.dog/user/futzle/review/18717/s/fine-not-a-very-coherent-whodunit#anchor-18717 or https://reading.taks.garden/user/Tak/review/20602/s/welcome-to-the-hyunam-dong-bookshop#anchor-20602

Expected behaviour

Review should have been fetched from Bookwyrm instance to Hometown instance and displayed to user

Actual behaviour

500 error in Hometown nginx log, review is not displayed in UI.

Detailed description

If I search this URL:

https://outside.ofa.dog/user/futzle/review/18717/

from the Hometown UI, I see this in the Bookwyrm log:

MISS - 2400:8907::f03c:93ff:fe78:43a2 [08/Jul/2024:11:13:39 +0000] "GET /user/futzle/review/18717/ HTTP/1.1" 200 1467 "-" "http.rb/5.1.1 (Mastodon/4.2.10+hometown-1.1.1; +https://old.mermaid.town/)" 0.064 0.061
MISS - 2400:8907::f03c:93ff:fe78:43a2 [08/Jul/2024:11:13:39 +0000] "GET /user/futzle/review/18717 HTTP/1.1" 200 1467 "-" "http.rb/5.1.1 (Mastodon/4.2.10+hometown-1.1.1; +https://old.mermaid.town/)" 0.056 0.056

and this in the Hometown log:

xxx.xxx.xxx.xxx - - [08/Jul/2024:21:13:39 +1000] "GET /api/v2/search?q=https:%2F%2Foutside.ofa.dog%2Fuser%2Ffutzle%2Freview%2F18717%2F&resolve=true&limit=11 HTTP/2.0" 500 925 "https://old.mermaid.town/deck/getting-started" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:127.0) Gecko/20100101 Firefox/127.0"

Which leaves me to believe that the status is being fetched properly from Bookwyrm (200), but Hometown is failing to process it (500).

Specifications

Hometown 1.1.1 4.2.10. Hometown 1.1.1 4.0.6 seems ok and does fetch the review (but only sometimes! wtf?). History on my instance (old.mermaid.town) suggests this has been happening since 4.0.11 (but I can't test that). Four different Hometown admins tested this.

Bookwyrm 0.6.3 and 0.7.1. Two different Bookwyrm admins tested this.

Mainline Mastodon 4.2.10 always fetches the status successfully. Two different Mastodon sites tested this.

Some admins report that a first fetch to a Hometown instance sometimes succeeds, but every subsequent fetch fails with the 500 error. Weird.

One admin has found the same behaviour on a 4.3.0 glitch-soc instance.