opdenkamp/xbmc — Issue #283: EPG updates continuously after commit cfd29b8c93e7c8366db5f90e8c123c99f8bc02aa
Author: mikkle
Created: 2011-10-21 22:26:11+00:00
State: open

After commit cfd29b8c93e7c8366db5f90e8c123c99f8bc02aa the EPG updates every second.
I put some "debug code" in EpgContainer.cpp, and it generates output like:
-----snip-----
:11:39 T:140413228312320 DEBUG: CPVRTimers - Update - updating timers
00:11:39 T:140413228312320 DEBUG: PVRTimers - UpdateEntries - updated timer 1 on client 1
00:11:40 T:140413236705024 INFO: MIKKLE: bUpdateEpg is now true
00:11:40 T:140413236705024 INFO: MIKKLE: iNow is now Sat Oct 22 02:11:40 2011
00:11:40 T:140413236705024 INFO: MIKKLE: m_iNextEpgUpdate is now Sat Oct 22 00:16:39 2011
00:11:40 T:140413236705024 DEBUG: Connecting to sqlite:/home/mikkle/.xbmc/userdata/Database/:Epg5.db
00:11:40 T:140413228312320 DEBUG: CPVRTimers - Update - updating timers
00:11:40 T:140413228312320 DEBUG: PVRTimers - UpdateEntries - updated timer 1 on client 1
00:11:41 T:140413236705024 INFO: MIKKLE: bUpdateEpg is now true
00:11:41 T:140413236705024 INFO: MIKKLE: iNow is now Sat Oct 22 02:11:41 2011
00:11:41 T:140413236705024 INFO: MIKKLE: m_iNextEpgUpdate is now Sat Oct 22 00:16:40 2011
00:11:41 T:140413236705024 DEBUG: Connecting to sqlite:/home/mikkle/.xbmc/userdata/Database/:Epg5.db
00:11:41 T:140413228312320 DEBUG: CPVRTimers - Update - updating timers
00:11:41 T:140413228312320 DEBUG: PVRTimers - UpdateEntries - updated timer 1 on client 1
00:11:42 T:140413236705024 INFO: MIKKLE: bUpdateEpg is now true
00:11:42 T:140413236705024 INFO: MIKKLE: iNow is now Sat Oct 22 02:11:42 2011
00:11:42 T:140413236705024 INFO: MIKKLE: m_iNextEpgUpdate is now Sat Oct 22 00:16:41 2011
00:11:42 T:140413236705024 DEBUG: Connecting to sqlite:/home/mikkle/.xbmc/userdata/Database/:Epg5.db
00:11:42 T:140413228312320 DEBUG: CPVRTimers - Update - updating timers
00:11:42 T:140413228312320 DEBUG: PVRTimers - UpdateEntries - updated timer 1 on client 1
00:11:43 T:140413236705024 INFO: MIKKLE: bUpdateEpg is now true
00:11:43 T:140413236705024 INFO: MIKKLE: iNow is now Sat Oct 22 02:11:43 2011
00:11:43 T:140413236705024 INFO: MIKKLE: m_iNextEpgUpdate is now Sat Oct 22 00:16:42 2011
00:11:43 T:140413236705024 DEBUG: Connecting to sqlite:/home/mikkle/.xbmc/userdata/Database/:Epg5.db
00:11:43 T:140413228312320 DEBUG: CPVRTimers - Update - updating timers
00:11:43 T:140413228312320 DEBUG: PVRTimers - UpdateEntries - updated timer 1 on client 1
00:11:44 T:140413236705024 INFO: MIKKLE: bUpdateEpg is now true
00:11:44 T:140413236705024 INFO: MIKKLE: iNow is now Sat Oct 22 02:11:44 2011
00:11:44 T:140413236705024 INFO: MIKKLE: m_iNextEpgUpdate is now Sat Oct 22 00:16:43 2011
00:11:44 T:140413236705024 DEBUG: Connecting to sqlite:/home/mikkle/.xbmc/userdata/Database/:Epg5.db
00:11:44 T:140413228312320 DEBUG: CPVRTimers - Update - updating timers
00:11:44 T:140413228312320 DEBUG: PVRTimers - UpdateEntries - updated timer 1 on client 1
00:11:45 T:140413236705024 INFO: MIKKLE: bUpdateEpg is now true
00:11:45 T:140413236705024 INFO: MIKKLE: iNow is now Sat Oct 22 02:11:45 2011
00:11:45 T:140413236705024 INFO: MIKKLE: m_iNextEpgUpdate is now Sat Oct 22 00:16:44 2011
00:11:45 T:140413236705024 DEBUG: Connecting to sqlite:/home/mikkle/.xbmc/userdata/Database/:Epg5.db
00:11:45 T:140413228312320 DEBUG: CPVRTimers - Update - updating timers
00:11:45 T:140413228312320 DEBUG: PVRTimers - UpdateEntries - updated timer 1 on client 1
00:11:46 T:140413236705024 INFO: MIKKLE: bUpdateEpg is now true
00:11:46 T:140413236705024 INFO: MIKKLE: iNow is now Sat Oct 22 02:11:46 2011
00:11:46 T:140413236705024 INFO: MIKKLE: m_iNextEpgUpdate is now Sat Oct 22 00:16:45 2011
00:11:46 T:140413236705024 DEBUG: Connecting to sqlite:/home/mikkle/.xbmc/userdata/Database/:Epg5.db
00:11:46 T:140413228312320 DEBUG: CPVRTimers - Update - updating timers
00:11:46 T:140413228312320 DEBUG: PVRTimers - UpdateEntries - updated timer 1 on client 1
00:11:47 T:140413236705024 INFO: MIKKLE: bUpdateEpg is now true
00:11:47 T:140413236705024 INFO: MIKKLE: iNow is now Sat Oct 22 02:11:47 2011
00:11:47 T:140413236705024 INFO: MIKKLE: m_iNextEpgUpdate is now Sat Oct 22 00:16:46 2011
00:11:47 T:140413236705024 DEBUG: Connecting to sqlite:/home/mikkle/.xbmc/userdata/Database/:Epg5.db
00:11:47 T:140413228312320 DEBUG: CPVRTimers - Update - updating timers
00:11:47 T:140413228312320 DEBUG: PVRTimers - UpdateEntries - updated timer 1 on client 1
00:11:48 T:140413236705024 INFO: MIKKLE: bUpdateEpg is now true
00:11:48 T:140413236705024 INFO: MIKKLE: iNow is now Sat Oct 22 02:11:48 2011
00:11:48 T:140413236705024 INFO: MIKKLE: m_iNextEpgUpdate is now Sat Oct 22 00:16:47 2011
00:11:48 T:140413236705024 DEBUG: Connecting to sqlite:/home/mikkle/.xbmc/userdata/Database/:Epg5.db
00:11:48 T:140413228312320 DEBUG: CPVRTimers - Update - updating timers
00:11:48 T:140413228312320 DEBUG: PVRTimers - UpdateEntries - updated timer 1 on client 1
00:11:49 T:140413236705024 INFO: MIKKLE: bUpdateEpg is now true
00:11:49 T:140413236705024 INFO: MIKKLE: iNow is now Sat Oct 22 02:11:49 2011
00:11:49 T:140413236705024 INFO: MIKKLE: m_iNextEpgUpdate is now Sat Oct 22 00:16:48 2011
00:11:49 T:140413236705024 DEBUG: Connecting to sqlite:/home/mikkle/.xbmc/userdata/Database/:Epg5.db
-----snap-----
Reverting the UTCDateTime bits of commit cfd29b8c93e7c8366db5f90e8c123c99f8bc02aa solves this for me.
A log with the date/time stuff reverted:
-----snip-----
00:08:44 T:140328538003200 INFO: MIKKLE: bUpdateEpg is now false
00:08:44 T:140328538003200 INFO: MIKKLE: iNow is now Sat Oct 22 02:08:44 2011
00:08:44 T:140328538003200 INFO: MIKKLE: m_iNextEpgUpdate is now Sat Oct 22 02:09:40 2011
00:08:45 T:140328538003200 INFO: MIKKLE: bUpdateEpg is now false
00:08:45 T:140328538003200 INFO: MIKKLE: iNow is now Sat Oct 22 02:08:45 2011
00:08:45 T:140328538003200 INFO: MIKKLE: m_iNextEpgUpdate is now Sat Oct 22 02:09:40 2011
00:08:46 T:140328538003200 INFO: MIKKLE: bUpdateEpg is now false
00:08:46 T:140328538003200 INFO: MIKKLE: iNow is now Sat Oct 22 02:08:46 2011
00:08:46 T:140328538003200 INFO: MIKKLE: m_iNextEpgUpdate is now Sat Oct 22 02:09:40 2011
00:08:47 T:140328538003200 INFO: MIKKLE: bUpdateEpg is now false
00:08:47 T:140328538003200 INFO: MIKKLE: iNow is now Sat Oct 22 02:08:47 2011
00:08:47 T:140328538003200 INFO: MIKKLE: m_iNextEpgUpdate is now Sat Oct 22 02:09:40 2011
00:08:48 T:140328538003200 INFO: MIKKLE: bUpdateEpg is now false
00:08:48 T:140328538003200 INFO: MIKKLE: iNow is now Sat Oct 22 02:08:48 2011
00:08:48 T:140328538003200 INFO: MIKKLE: m_iNextEpgUpdate is now Sat Oct 22 02:09:40 2011
00:08:49 T:140328538003200 INFO: MIKKLE: bUpdateEpg is now false
00:08:49 T:140328538003200 INFO: MIKKLE: iNow is now Sat Oct 22 02:08:49 2011
00:08:49 T:140328538003200 INFO: MIKKLE: m_iNextEpgUpdate is now Sat Oct 22 02:09:40 2011
00:08:50 T:140328494540544 DEBUG: AddOnLog: VDR XVDR Client: SendPing
00:08:50 T:140328538003200 INFO: MIKKLE: bUpdateEpg is now false
00:08:50 T:140328538003200 INFO: MIKKLE: iNow is now Sat Oct 22 02:08:50 2011
00:08:50 T:140328538003200 INFO: MIKKLE: m_iNextEpgUpdate is now Sat Oct 22 02:09:40 2011
00:08:51 T:140328538003200 INFO: MIKKLE: bUpdateEpg is now false
00:08:51 T:140328538003200 INFO: MIKKLE: iNow is now Sat Oct 22 02:08:51 2011
00:08:51 T:140328538003200 INFO: MIKKLE: m_iNextEpgUpdate is now Sat Oct 22 02:09:40 2011
00:08:52 T:140328538003200 INFO: MIKKLE: bUpdateEpg is now false
00:08:52 T:140328538003200 INFO: MIKKLE: iNow is now Sat Oct 22 02:08:52 2011
00:08:52 T:140328538003200 INFO: MIKKLE: m_iNextEpgUpdate is now Sat Oct 22 02:09:40 2011
00:08:53 T:140328538003200 INFO: MIKKLE: bUpdateEpg is now false
00:08:53 T:140328538003200 INFO: MIKKLE: iNow is now Sat Oct 22 02:08:53 2011
00:08:53 T:140328538003200 INFO: MIKKLE: m_iNextEpgUpdate is now Sat Oct 22 02:09:40 2011
-----snap-----
My timezone country is set to Denmark
Timzone is set to Europe/Copenhagen

For the record, my logging is generated by:
CLog::Log(LOGINFO, "MIKKLE: bUpdateEpg is now %s", (bUpdateEpg)?"true":"false");
CLog::Log(LOGINFO, "MIKKLE: iNow is now %s", ctime(&iNow));
CLog::Log(LOGINFO, "MIKKLE: m_iNextEpgUpdate is now %s", ctime(&m_iNextEpgUpdate));
in the loop of CEpgContainer::Process