[mythtv-users] HELP: HD died will need to delete all recordings

Bill Meek keemllib at gmail.com
Sat Oct 27 14:49:44 UTC 2018


On 10/27/18 9:20 AM, Stephen Worthington wrote:
> On Sat, 27 Oct 2018 09:38:39 -0400, you wrote:
> 
>> On 10/27/18, Stephen Worthington <stephen_agent at jsw.gen.nz> wrote:
>>> On Fri, 26 Oct 2018 13:10:39 -0400, you wrote:
>>>
>>>> On 10/26/18, Tom Dexter <digitalaudiorock at gmail.com> wrote:
>>>>> On 10/23/18, Michael T. Dean <mtdean at thirdcontact.com> wrote:
>>>>>> find_orphans.py automatically deletes and _allows_ re-record, but you
>>>>>> are correct that it will not create new rules to record the shows that
>>>>>> are deleted (nor will any other mechanism for deletion). Any existing
>>>>>> rules the cover the shows that get deleted will result in re-recording
>>>>>> of the episodes.  However rules that no longer exist (i.e. "this
>>>>>> showing" or "find and record once" or ... rules) will need to be
>>>>>> created
>>>>>> again.  Generally, though, those one-off rules tend to be for
>>>>>> "opportunistic" recording of something less important, so probably
>>>>>> aren't too much of a concern.
>>>>>>
>>>>>> Mike
>>>>>
>>>>> Wow...totally confused. How exactly should I be getting that
>>>>> find_orphans.py script? I see it's not part of the mythtv distribution
>>>>> itself, and that link above doesn't have any sort of raw download. I
>>>>> attempted to copy and paste it into vi from that page (which really
>>>>> rubbed me the wrong way), which looked ok (and appeared to have the
>>>>> proper space indenting) but it fails miserably.
>>>>>
>>>>> Run as root I get this:
>>>>>
>>>>> ./find_orphans.py
>>>>> Traceback (most recent call last):
>>>>>    File "./find_orphans.py", line 221, in <module>
>>>>>      DB = MythDB()
>>>>>    File "/usr/lib/python2.7/site-packages/MythTV/database.py", line
>>>>> 1264, in __init__
>>>>>      for tmpconfig in dbconfig.test(self.log):
>>>>>    File "/usr/lib/python2.7/site-packages/MythTV/database.py", line 938,
>>>>> in
>>>>> test
>>>>>      for conn in XMLConnection.fromUPNP(5.0):
>>>>>    File "/usr/lib/python2.7/site-packages/MythTV/connections.py", line
>>>>> 607, in fromUPNP
>>>>>      ip, port = reLOC.match(res['location']).group(1,2)
>>>>> AttributeError: 'NoneType' object has no attribute 'group'
>>>>>
>>>>> If I attempt that as a non-root user it segfaults. Any suggestions are
>>>>> welcome.
>>>>>
>>>>> I was actually able to recover most of the recordings we care about
>>>>> and I wanted to use this to clean up the rest.
>>>>>
>>>>> Tom
>>>>>
>>>>
>>>> Given how little I actually had to do here I just did this manually in
>>>> mythweb...but I'd still love to know what I was doing wrong there if I
>>>> ever need this.
>>>>
>>>> Thanks!
>>>> Tom
>>>
>>> In Python the indenting matters, so you may have had a problem with
>>> that.  It is difficult to tell.  And for Python it is also best to use
>>> UTF-8 (no signature) as the character set for storing files now.
>>> Python code can have UTF-8 characters in it and that can be important.
>>> I have put a copy of my working version on my web server:
>>>
>>> http://www.jsw.gen.nz/mythtv/find_orphans.py
>>>
>>> You might like to download it and check it against your vi version.  I
>>> checked it against the official version today and it is identical,
>>> according to my diff program.  And it works for me.
>>
>> Thanks for that. Interestingly they were the same. Yea, for some
>> reason I have some very odd breakage happening there, and it behaves
>> differently running as root vs a non-root user. This is Gentoo running
>> Python 2.7.15.
>>
>> Running it with python -v here's what I see failing when run as root:
>>
>> # /usr/lib/python2.7/site-packages/MythTV/methodheap.pyc matches
>> /usr/lib/python2.7/site-packages/MythTV/methodheap.py
>> import MythTV.methodheap # precompiled from
>> /usr/lib/python2.7/site-packages/MythTV/methodheap.pyc
>> Traceback (most recent call last):
>>   File "find_orphans.py", line 221, in <module>
>>     DB = MythDB()
>>   File "/usr/lib/python2.7/site-packages/MythTV/database.py", line
>> 1264, in __init__
>>     for tmpconfig in dbconfig.test(self.log):
>>   File "/usr/lib/python2.7/site-packages/MythTV/database.py", line 938, in test
>>     for conn in XMLConnection.fromUPNP(5.0):
>>   File "/usr/lib/python2.7/site-packages/MythTV/connections.py", line
>> 607, in fromUPNP
>>     ip, port = reLOC.match(res['location']).group(1,2)
>> AttributeError: 'NoneType' object has no attribute 'group'
>>
>> So it clearly doesn't like something in that methodheap.
>> Interestingly, run an a non-root user it gets past that but segfaults
>> later:
>>
>> # /usr/lib/python2.7/site-packages/MythTV/methodheap.pyc matches
>> /usr/lib/python2.7/site-packages/MythTV/methodheap.py
>> import MythTV.methodheap # precompiled from
>> /usr/lib/python2.7/site-packages/MythTV/methodheap.pyc
>> # /usr/lib/python2.7/site-packages/MySQLdb/connections.pyc matches
>> /usr/lib/python2.7/site-packages/MySQLdb/connections.py
>> import MySQLdb.connections # precompiled from
>> /usr/lib/python2.7/site-packages/MySQLdb/connections.pyc
>> # /usr/lib/python2.7/site-packages/MySQLdb/constants/CLIENT.pyc
>> matches /usr/lib/python2.7/site-packages/MySQLdb/constants/CLIENT.py
>> import MySQLdb.constants.CLIENT # precompiled from
>> /usr/lib/python2.7/site-packages/MySQLdb/constants/CLIENT.pyc
>> # /usr/lib/python2.7/site-packages/MySQLdb/converters.pyc matches
>> /usr/lib/python2.7/site-packages/MySQLdb/converters.py
>> import MySQLdb.converters # precompiled from
>> /usr/lib/python2.7/site-packages/MySQLdb/converters.pyc
>> # /usr/lib/python2.7/site-packages/MySQLdb/constants/FLAG.pyc matches
>> /usr/lib/python2.7/site-packages/MySQLdb/constants/FLAG.py
>> import MySQLdb.constants.FLAG # precompiled from
>> /usr/lib/python2.7/site-packages/MySQLdb/constants/FLAG.pyc
>> Segmentation fault
>>
>> Really odd one. Again, not all that important to me now, but strange.
>> Thanks again!
>>
>> Tom
> 
> As root, the actual crash is happening in a module of the MythTV
> Python bindings.  So do you have the correct version of that
> installed?  Does it match your MythTV version?  Maybe it would be
> worthwhile trying reinstalling that package.  In Ubuntu, the package
> is libmyth-python.

For the root case, I can duplicate the failure because there's
no .mythtv/config.xml.

-- 
Bill


More information about the mythtv-users mailing list