[vdr] error on large EPG loads via SVDRP
vdr at schmirler.de
Thu Jan 11 08:52:22 CET 2007
On Wed, 10 Jan 2007 23:48:38 +0100, Pjotr Kourzanov wrote
> I have neither investigated the problem deeper yet (just found a way
> to split the EPG data into parts), nor looked in the source code. Is
> it so difficult to convince the watchdog that while SVDR thread is
> busy it is actually doing useful work?
SVDRP is not implemented as a thread. Processing the SVDRP interface is part
of the VDR main loop. The problem is that if you are uploading EPG fast
enough, the SVDRP code will remain in cSVDRP::Process() until you're done. So
the watchdog timer will not be refreshed and the watchdog eventually fires.
There are two possible workarounds:
1. increase the watchdog timeout
2. take a short break from time to time while uploading the EPG. The "while
(file.Ready(false))" loop in cSVDRP::Process() has a timeout of just 10
milliseconds. With a sleep of 100ms you should be on the safe side, as you
still need to take into account that network traffic is buffered on both, the
client and the server.
More information about the vdr