[mythtv-users] Potential Problem With Switch Back to Standard Time

Nick knowledgejunkie at gmail.com
Sat Oct 29 16:15:12 EDT 2005


On 29/10/05, Kevin Atkinson <kevin at atkinson.dhs.org> wrote:
>
> Well it looks like I got a few things incorrect.  Corrections below.
> Sorry for all the emails.
>
> On Sat, 29 Oct 2005, Kevin Atkinson wrote:
>
> > [List should probably also go to the dev list also, if I don't get a 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.
>
> OK well I was wrong.  It appears that MythTV DOES account for the switch
> when it reads in the data. The program guide remains correct but the
> program info for the extra hour is missing.
>
> In fact what originally prompted me was that I was trying to find a show
> that was during the extra hour.  I just changed so many things so many
> times everything got messed up.
>
> Everything think below still holds.
>
> > 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
> > "12" for "None of the Above" and then selected "GMT+6".  This 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).
> >
> > 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 :-|
>
> OK here is what the guide SHOULD look like:
>
> 12:00 | 1:00 |  1:00 |  2:00
>   S12    S1a     S1b     S2
>
> Here is what mythweb is showing
>
> 12:00 | 1:00 |  1:00 |  2:00
>   S12            S1a     S2
>
> And here is what MythTV shows
>
> 12:00 |  1:00 |  2:00
>   S12     S1a     S2
>
>
> The fact that mythweb showed this gap with the missing data is what clued
> me in to the reason I couldn't find the show I was looking for during the
> extra hour.

I have a similar issue here in the UK using the uk_rt listings. The
listings are marked as GMT for those shows starting after the time has
been put back an hour.

MythTV and MythWeb however have a gap for those shows that have finish
times that are now after the starting time of the subsequent programs
due to the hour's adjustment. The uk_rt listings usefully include the
program length but I don't think this is taken into account.

The net result is that there are gaps in the schedules in the early
hours in the case where the listings make no sense to MythTV (which is
therefore importing the listings correctly) but mean it is not
possible to schedule recordings of these programs other than manually.

I also subscribe to DigiGuide which has the 12 - 1 - 1 - 2  listings
format to make it obvious which programs bridge the time change.

Nick


More information about the mythtv-users mailing list