Help solving a 503 on one feed #1243
-
I've got one feed out of about 40 that I can't get into News. It could be an issue on my system, and not with News. I'd appreciate any pointers on how to further debug this issue.
The thing that confuses me is that I can curl the feed just fine form the same host. I'm using the same User-Agent and Accept headers as News (or I think I am). The following curl works:
Running feedio manually (on another system in the same network) also works. I'm not sure where to go from here. Suggestions welcome 😄 (I'm very happy with my transition to News, btw. It's a great piece of software.) |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 6 replies
-
Even if you solve your issue with the 503, that feed doesn't provide item identifiers so it would fail to import into news. |
Beta Was this translation helpful? Give feedback.
-
Ok, I found the 503 issue. This URL responds with a 503 if multiple requests are sent too quickly. The reason this is happening in News is that in FeedServiceV2, it's calling I've locally modified FeedServiceV2 to place a So my question is, what's an acceptable way to fix/prevent this? I'm happy to provide a pull request, if there is a solution that project maintainers would accept. Maybe a sleep is OK. Or perhaps, only sleep/retry if there is an exception with the |
Beta Was this translation helpful? Give feedback.
Ok, I found the 503 issue. This URL responds with a 503 if multiple requests are sent too quickly. The reason this is happening in News is that in FeedServiceV2, it's calling
Exporer->discover()
followed immediately byFeedFetcher->fetch()
for the same URL.I've locally modified FeedServiceV2 to place a
sleep(1)
between those two calls and now News is able to add the feed.So my question is, what's an acceptable way to fix/prevent this? I'm happy to provide a pull request, if there is a solution that project maintainers would accept. Maybe a sleep is OK. Or perhaps, only sleep/retry if there is an exception with the
FeedFetcher->fetch()
call.