[mythtv-users] Potential Problem With Switch Back to Standard Time
Kevin Atkinson
kevin at atkinson.dhs.org
Sat Oct 29 14:48:32 EDT 2005
On Sat, 29 Oct 2005, Kevin Atkinson wrote:
> On Sat, 29 Oct 2005, Kevin Atkinson wrote:
>
> > [List should probably also go to the dev list also, if I don't get a
> ^^^^ = This
> > response from any developers I will likely post it there also...]
> >
> > I am not a developer but I just spent the last 3+ hours investigation the
> > situation.
> >
> > The switch back to Standard Time this Sunday is likely to mess MythTV
> > up. If you are getting your data from the Data Direct service form
> > zap2it labs the most likely behavior is that everything will be off by an
> > hour. However, rereading the program data back in should to fix the
> > problem. If you get your data from a web page than your schedule may or
> > may not be correct.
> >
> > The reason for the anomaly when using the Data Direct service is
> > because the times are given in UTC and MythTV converts them to local time
> > without accounting for the switch. There is a slight possibility that
> > MythTV may correct for the problem and update the program guide when it
> > detects the switchover. However I do not think MythTV will do this.
> >
> > For users who get there data from a web page this anomaly in unlikely
> > because the times are probably already in local time.
> >
> > However, in both case, if you try to record something between 1:00-2:00,
> > MythTV may act in strange ways as at 2:00 the time gets reset back to
> > 1:00. MythTV could record a show twice or it could do any number of other
> > things, hopefully it won't wipe your hard drive ;). From that point on
> > the guide will than be off by an hour until it gets reread from the
> > server.
> >
> > However, there will be problem even if MythTV correctly detected the
> > switch back to standard time due to the fact that programs times are
> > stored in the database in in _local_ time. This means that it is
> > _impossible_ to store program information for the extra hour AND also keep
> > the listing accurate across the switch back to standard time. Thus there
> > is the choice to ignore the switch and just lets things be off by an hour
> > until the user notices and corrects for the problem (or until the program
> > data expires and new data is read in with the correct adjustment) or make
> > it impossible to to record a program during this extra hour By just
> > ignoring the the switch the user has some hope of recording something
> > during the extra hour AND keeping the schedule consistent by tricking the
> > computer into NOT adjusting the clock for the switch.
> >
> > The real solution to this problem is to store all times in the database in
> > _UTC_ and only convert it back to local time when displaying it to the
> > user. All program times entered in my the user should thus be converted
> > to UTC. This way there are no anomalies during the switch. MythTV may
> > also need to be aware of when the switch happens in order to correctly
> > display the Grid and program times before and after the switch. The only
> > major problem is that manually recording a program during the extra hour
> > will be impossible without some sort of special feature of the GUI to
> > indicate _which_ 1:00 the user meant.
> >
> > Thus, I _*STRONGLY*_ suggest that MythTV be modified to store the Program
> > Times in UTC rather than local time. Of course this will create a
> > migration problem. The easiest solution is to automatically convert all
> > the exiting program times to UTC in the database when a user first uses a
> > newer version of MythTV. Once the data is converted a extra flag can be
> > stored somewhere that the program times are now in UTC and they should not
> > be converted again. This switch should be well documented so that the
> > user us aware of the change in case he downgrades to an version of MythTV
> > that still uses local time. In this case there should be a way to convert
> > the program data from UTC back to Local Time.
> >
> > Since I am recording stuff during the extra hour I set my time zone to
> > "GMT+6" which is the same as MDT but hopefully won't change during the
> > switch back to standard time. I did this by using "tzconfig" and then
> > selecting "11" for "None of the Above" and then selected "GMT+6". This
> ^^ = 12
> > should work for most Debian based systems. Other distributions likely have a
> > different way of setting the timezone. I will still be watching MythTV
> > closely to make sure it doesn't do anything funny (I don't normally go to
> > bead before 3:00 anyway).
>
> I also disabled the automatic downloading of program just to be safe.
>
> Sunday morning, I will change the timezone back to what it should be and
> correct the program data by redownloading it.
>
> > BTW: I noticed this problem because mythweb is somehow accounting for the
> > switch when displaying the grid, but it is not doing it correctly since
> > there is a gap in the schedule during the extra hour when nothing is
> > shown, and the times are all wrong after words. So thank you mythweb
> > developers for incorrectly hading the switch, otherwise I would have not
> > noticed this problem until it was too late :-|
>
> I should also mention that it accounts for the switch even when the
> current timezone is set to something that doesn't switch for Daylight
> saving time.
Well, after rebooting my computer it managed to correct itself as it is
now displaying the grid correctly without doing anything special for at
2:00.
Expect another update Sunday.
--
http://kevin.atkinson.dhs.org
More information about the mythtv-users
mailing list