It’s [if|when] you [deliberately|mistakenly] use that interval for any other 3rd party feeds to subscribe to and the owner notices and thinks you shouldn’t be hammering their server. Then they start blaming your RSS software and make noises about it.

No there isn’t. I could make my own app from scratch that aggregates the results from the API that my feed uses on a server then sends it to an android app when I refresh in the app, but I don’t have time to make that.

The feeds are all running on my own network. I don’t need any other feeds, and doubt I’d every mistakenly add another feed…

That’s fine. If you understand what you’re doing no one’s going to give you a hard time. People are just mentioning the consequences because site owner’s actually have come here to complain. They’ve also out-right blocked the TT-RSS user agent, which can affect many others.

Yeah I get it, I would be frustrated too if feeds that I use ban the platform I use to read those feeds.

I thought the minimum was 1 minute though, but just found out that’s just for the update daemon, and that won’t update unless the length of the update interval set through the tt-rss settings page has passed (minimum 15 minutes). I added an option in the backend.php to update every minute instead (would doubles instead of integers work here to set it to half a minute for example?), but it’s still just updating every 10 minutes.

there’s a few more queries you’ll need to update.

here’s one - https://git.tt-rss.org/fox/tt-rss/src/branch/master/classes/rssutils.php#L108

Thanks! Already found that but wasn’t sure if that was it.
Do I need to change line 281 of /classes/rpc.php too?

don’t bother. it’s for the so-called simple updates, stuff for shared hosting users, pretty much.

Ok! And I can I set it to half a minute or just whole minutes?

you could replace “… minutes” with “… seconds” in the queries and bump intervals accordingly.

Okay great! Do I need to edit line 205 of update_daemon2.php as well?

And is this right?

I changed the daemon_sleep_interval in config.php, line 176 and 205 in update_daemon2.php, line 108 and 110 in rssutils.php, and $update_intervals / $update_intervals_nodefault in backend.php. It’s now updating about every 90 seconds but still not every 30 seconds.

(two feeds, updated one for one at xx:03:20, xx:03:51, xx:04:27, xx:05:23, xx:05:55, xx:06:56, xx:07:01, xx:08:29, xx:08:38)

i don’t really want to dig too much into this myself, i do have a suggestion though: if the daemon starts new update tasks but no feeds come up, you forgot something in the update_daemon_common() feed selection logic.

if it doesn’t, it’s probably something with the main loop in update_daemon2.php.

you can try update.php --feeds to isolate former from the latter, get to the point where it updates feeds often enough for you, and go from there.

TT-RSS caches feeds. It could be that TT-RSS is updating every 30 seconds but the cache is getting hit during that time.

oh nice catch, @Pizzabroodje that would be rssutils.php line 407.

Do I need to lower that from 30 then?

You could lower it from 30 or even adjust the condition so it never uses the cache, or just comment out lines 404-419 so the code is never run.

I tried both, but still updating every 1,5 minutes (also restarted the ttrss_backend service after changing just to be sure).
Here’s a pastebin of a part of the journalctl starting at the last restart:
https://pastebin.com/dZZYJeJC

I changed line 82, 85, 95 and 98 as well, it’s updating every minute now, but still not every 30 seconds. I’ll try running the daemon every 15 seconds with the interval set to 30, to see if that’ll make a difference.

Edit: after doing that now it looks like it’s updating about every 35 seconds on average. I think the extra 5-10 seconds is just a small delay somewhere, and that doesn’t really bother me that much.

Thanks for all the help!! I will highly consider donating if I end up keeping TT-RSS!

I sadly ran into some issues again. When trying to fetch a large feed (with many articles), or all articles of a few feeds combined, from the Android app, it times out after 10 seconds.
Fetching only the fresh articles of those feeds works, but I suspect that’s because it’s completed within 10 seconds.
Fetching all articles from the website instead of the app also works, even if it takes longer than 10 seconds.

The app says: “Error: I/O failure (server down?)
timeout”

What could be the culprit? I already tried changing the DAEMON_SLEEP_INTERVAL, FEED_FETCH_TIMEOUT, FEED_FETCH_NO_CACHE_TIMEOUT, FILE_FETCH_TIMEOUT and FILE_FETCH_CONNECT_TIMEOUT, but to no avail.