[mythtv-users] find_orphans.py broken on 32 bit x86?

Jonatan Lindblad lindbladjonatan at gmail.com
Wed Oct 31 21:06:20 UTC 2018


Den 2018-10-31 kl. 21:38, skrev Tom Dexter:
> On 10/31/18, Will Dormann <wdormann at gmail.com> wrote:
>> On 10/31/18 2:56 PM, Tom Dexter wrote:
>>>     obj = super(datetime, cls).fromtimestamp(float(timestamp), tz)
>>> ValueError: timestamp out of range for platform time_t
>>>
>>> I'm pretty sure that the limit for that time_t may be 2147483647 on
>>> x86 and 67768036191676795 on 64 bit systems(?). Has anyone here ever
>>> used that option on a 32 bit system?
>>
>>
>> I don't suspect that this is a 32-bit vs. 64-bit thing.   A 32-bit
>> system can handle any timestamp that may be associated with a recording.
>>   It's possible that you have a recording with an invalid timestamp.
>>
>> I'd replace line 129:
>>
>>                     rec.delete(True, True)
>>
>> With:
>>                     try:
>>                         rec.delete(True, True)
>>                     except ValueError:
>>                         print('Error deleting %s' % rec)
>>
>> And perhaps report back here if there's a single (or few) problematic
>> recording, of if it's for all of them.
>>
>>
>> -WD
> 
> I agree that it should be able to handle an epoch value as a
> timestamp, but I have a feeling it's doing something else there that
> is in fact causing a problem. The error I reported above was done with
> a brand new recording where I moved the video file as a test. No
> question it had perfectly valid times. I just tried another:
> 
> ./find_orphans.py
> Recordings with missing files
>   mythback: Judge Judy - Random Vandalism or Hilary Clinton Attack?
>        1021_20181031203000.ts
> 
>            Count:           1
> Orphaned snapshots
>   mythback: /video/recordings/1021_20181031203000.ts.png
>                         1.7MB
> 
>            Total:       1.7MB
> Please select from the following
>  1. Delete orphaned recording entries
>  2. Delete orphaned snapshots
>  3. Refresh list
>> 1
> The following recordings will be deleted
>   mythback: Judge Judy - Random Vandalism or Hilary Clinton Attack?
>        1021_20181031203000.ts
> 
>            Count:           1
> Are you sure you want to continue?
>> yes
> Traceback (most recent call last):
>   File "./find_orphans.py", line 230, in <module>
>     main()
>   File "./find_orphans.py", line 214, in main
>     opt[1](opt[2])
>   File "./find_orphans.py", line 129, in delete_recs
>     rec.delete(True, True)
>   File "/usr/lib/python2.7/site-packages/MythTV/dataheap.py", line
> 375, in delete
>     return self.getProgram().delete(force, rerecord)
>   File "/usr/lib/python2.7/site-packages/MythTV/dataheap.py", line
> 387, in getProgram
>     return Program.fromRecorded(self)
>   File "/usr/lib/python2.7/site-packages/MythTV/mythproto.py", line
> 946, in fromRecorded
>     return be.getRecording(rec.chanid, rec.starttime)
>   File "/usr/lib/python2.7/site-packages/MythTV/mythproto.py", line
> 647, in getRecording
>     return Program(res[1:], db=self.db)
>   File "/usr/lib/python2.7/site-packages/MythTV/mythproto.py", line
> 875, in __init__
>     DictData.__init__(self, raw)
>   File "/usr/lib/python2.7/site-packages/MythTV/altdict.py", line 148,
> in __init__
>     data = self._process(data)
>   File "/usr/lib/python2.7/site-packages/MythTV/altdict.py", line 164,
> in _process
>     data[i] = self._trans[self._field_type[i]](v)
>   File "/usr/lib/python2.7/site-packages/MythTV/altdict.py", line 104,
> in <lambda>
>     lambda x: datetime.fromtimestamp(x, datetime.UTCTZ())\
>   File "/usr/lib/python2.7/site-packages/MythTV/utility/dt.py", line
> 304, in fromtimestamp
>     obj = super(datetime, cls).fromtimestamp(float(timestamp), tz)
> ValueError: timestamp out of range for platform time_t
> 
> Here's the record in the recorded table...nothing wrong there:
> 
> mysql> select * from recorded where title='judge judy'\G
> *************************** 1. row ***************************
>          chanid: 1021
>       starttime: 2018-10-31 20:30:00
>         endtime: 2018-10-31 20:31:00
>           title: Judge Judy
>        subtitle: Random Vandalism or Hilary Clinton Attack?
>     description: A stranger allegedly keys a six-foot scratch on the
> side of a car that has a Clinton bumper sticker on it.
>          season: 0
>         episode: 0
>        category: Reality
>        hostname: mythback
>        bookmark: 0
>         editing: 0
>         cutlist: 0
>      autoexpire: 1
>     commflagged: 0
>        recgroup: Default
>        recordid: 8308
>        seriesid: EP00188710
>       programid: EP001887106287
>         inetref:
>    lastmodified: 2018-10-31 16:30:00
>        filesize: 35206384
>           stars: 0
> previouslyshown: 0
> originalairdate: 2018-10-31
>        preserve: 0
>          findid: 0
>   deletepending: 0
>      transcoder: 0
>     timestretch: 1
>     recpriority: 0
>        basename: 1021_20181031203000.ts
>       progstart: 2018-10-31 20:00:00
>         progend: 2018-10-31 20:30:00
>       playgroup: Default
>         profile: Default
>       duplicate: 1
>      transcoded: 0
>         watched: 0
>    storagegroup: Default
>  bookmarkupdate: 0000-00-00 00:00:00
>      recgroupid: 1
>      recordedid: 5582
>       inputname: HDHR 1
> 1 row in set (0.01 sec)
> 
> Tom

I'm pretty sure it's the bookmarkupdate value that's the problem, https://forum.mythtv.org/viewtopic.php?f=36&t=1716&start=15.

Jonatan


More information about the mythtv-users mailing list