[mythtv-users] Same error every day ~5:30 pm

Klaas de Waal klaas.de.waal at gmail.com
Sat Nov 5 18:49:15 UTC 2022


Hi George, all,

For testing I have added an explicit QList out-of-range addressing error
just to see what happens on my Fedora system.
When configured with "--compile-type=release" the invalid QList access
gives some number back.
When configured with "--compile-type=debug" or without specifying a
--compile-type option the invalid QList access fails with the same ASSERT
failure "index out of range".
The actual Qt error is given by the Q_ASSERT_X macro and this macro is
documented as follows:
Q_ASSERT_X is useful for testing pre- and post-conditions during
development. It does nothing if QT_NO_DEBUG was defined during compilation.
Apparently the mythtv packages for Ubuntu are not compiled for release.

I have tried to reproduce the problem by setting up two recording rules
that keep one recording, but this does not give the ASSERT failure.
Possibly the ASSERT failure does depend on some other setting in the
recording rule?
Can you give some more details about how the recording rule is configured?

If the problem cannot be reproduced by me then I can only have a look at a
gdb traceback that you provide.
Attaching gdb to an already started mythbackend as suggested by Mike,
before the crucial time of 5:30, sounds like a plan.

Thanks,
Klaas.


On Wed, 2 Nov 2022 at 20:08, Mike Hodson <mystica at gmail.com> wrote:

>
>
> On Wed, Nov 2, 2022, 12:40 George Bingham <georgeb1962 at gmail.com> wrote:
>
>>
>>
>> On Wed, Nov 2, 2022 at 5:18 AM Klaas de Waal <klaas.de.waal at gmail.com>
>> wrote:
>>
>>>
>>>
>>>
>>> It would be great if you can start mythbackend from gdb and then, when
>>> the segfault has happened, create a backtrace like this:
>>> gdb> bt full
>>> and attach the output to the ticket.
>>>
>>>
>>
>> I am not sure how to run the backend through gdb. Not sure I even have
>> gdb on my system unless it's there by default. (OK, just checked, it is)
>> The backend is started by the system, if there's a simple change I can make
>> to have it launch through gdb automatically I can do that for the next few
>> days, but then I'd need to know how to deal with the output... ??
>>
>
> What you could do is attach gdb to the running process after it launches,
> so you don't have to do anything special to the boot up process.
>
>
> https://stackoverflow.com/questions/2308653/can-i-use-gdb-to-debug-a-running-process
> has a couple good discussions of different ways to do it, from command line
> options to launching gdb in interactive mode and using commands within it.
>
> You would want to run GDB as the user that is running the myth TV process,
> so you might need a sudo -u mythtv prefixing the gdb command, or launch a
> shell as the mythtv user and interact with gdb that way.
>
> That said, I do not know if there are any apparmor permissions or such
> that might need to be added for the mythtv user to debug its own process,
> so there is also the slight chance that the easiest way to do this,
> although theoretically not the safest or most secure, would be to run it as
> root.
>
> Hope this helps!
>
> Mike
>
> _______________________________________________
> mythtv-users mailing list
> mythtv-users at mythtv.org
> http://lists.mythtv.org/mailman/listinfo/mythtv-users
> http://wiki.mythtv.org/Mailing_List_etiquette
> MythTV Forums: https://forum.mythtv.org
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mythtv.org/pipermail/mythtv-users/attachments/20221105/58176e50/attachment.htm>


More information about the mythtv-users mailing list