Post by Karl Dietzb) add a capability to report some "suggested-run-time"
Shepherd (Australia) wants this.
I'm thinking about something that specifies expectation and deviation
of the start time (http://en.wikipedia.org/wiki/Normal_distribution)
That would allow to specify when the service has low load and move
access by automated grabbers that understand "suggested-run-time"
there.
Or move updates to "in time to get last minute updates to prime
time shows" while still spreading out the load a bit.
I'm open for suggestions if someone wants something more advanced to
allow separate times for bulk filling and last minute updates, e.g.
for scrapers. But as I don't believe in scrapers that would be up to
you. :)
Shepherd dev here! The benefits we'd seek from something like this are:
1. Be able to suggest how often the grabber should be run: daily,
hourly, whatever. This is something the grabber knows better than the
media center, since it's familiar with how often the data source
updates, and how to most efficiently get data from it. So it makes sense
for the grabber to be able to pass that information along.
In our particular case, we want to run hourly even if we might not
perform a data grab, because Shepherd is relatively fragile and runs
don't always succeed. (Shepherd can take hours to complete, and some
rural users have poor internet connectivity.) This way we can ensure the
user's EPG was successfully updated at least once in the last day, and
if not, try again. Without this, a few failed grabs in a row lead to
systems running low on data.
2. Avoid "piling", where a media center has a particular default time to
run its grabber and every user hits the data source at the same moment.
This isn't really anything to do with XMLTV, as far as I can tell, but
more an issue with how MythTV has traditionally operated. It's been a
showstopper for us because each Shepherd user has to scrape hundreds or
thousands of HTML pages, and if everyone does that at the same time, it
destroys servers, and we have no EPG.
We don't need anything more sophisticated than that. We don't want to
engage in active load-balancing, for example. We're happy for each user
to run at random times, or whenever they like, so long as they're not
all being defaulted to the same time.
I think MythTV still has a default window of 2am-5am which is the only
time grabbers are permitted to run, although it now randomizes the time
within that window. This is a big improvement from the early days, when
everyone's grabber would fire at precisely 2am, and is mostly adequate
in terms of avoiding piling. It means the grabber can't check for
schedule changes after 5am, though, which is a shame. I don't really
understand the point of that window.
I'm not sure what does or should happen when the grabber's suggested run
time falls outside of MythTV's window.
What happens if the user's system is powered off during
"suggested-run-time"? I think it should run the grabber as soon as
possible after boot, and this should be explicit.
Max.