Problem with 3.06 PVR

Ralph Corderoy ralph at inputplus.co.uk
Fri Nov 10 09:26:50 PST 2017


Hi Richard,

> The way the cache is refreshed has changed so much recently that I may
> be confusing a historical regime with the present one.

Yes, the arms race does make it tricky to keep up.  I only dig when
something stops working.

> My understanding is that the 30 day limit refers to how long entries
> remain in the cache.  Programmes older than 30 days are discarded.

It currently controls how many whole-weeks back we go in retrieving
schedules like https://www.bbc.co.uk/schedules/p00fzl6n/2017/w$w for BBC
One, where $w is the week number of the year, e.g. today is in week 45.

Entries in the cache are purged by get_links() if they don't have an
"expires" time, or it's before "now", or its "timeadded" is more than 30
days ago.  That 30 days is fixed and defined as $min_timeadded.

> The schedules only exist for this week and last week, so it is not
> possible to add programmes more than 2 weeks old.

I've just got all those for {01..45} and they're all available.  I think
it's just get_iplayer doesn't want to slow things down by getting the
older ones, even though they obviously contain programmes that could
still be available, e.g. _This Week_ is typically online for a year.
(They can't give it away!)  This suggests if one comes back from a
three-month cruise that overriding the 30-day limit could be useful.

> The v3.00 release notes
> https://github.com/get-iplayer/get_iplayer/wiki/release300to309#release300
> state,
> The slower updates are compensated for by the fact that the cache is
> now updated only once per calendar week (Mon-Sun). The cache will be
> updated the first time get_iplayer runs during the week.
>
> My cache still seems to refresh every 4 hours, so I may have got it
> completely wrong.

I think it's changed again since 3.00.  The --expiry option defaults to
four hours now;  if the cache is older than that then it is refreshed.
(It's also refreshed if explicitly requested, or it doesn't exist.)  I
always specify a very high --expiry option because I explicit refresh
the cache once each morning, without waiting for it to finish, and then
don't want it delay any of my later runs of get_iplayer during the day.

-- 
Cheers, Ralph.
https://plus.google.com/+RalphCorderoy



More information about the get_iplayer mailing list