[mythtv] [SVN7344] Live TV fails on second try

Bruce Markey bjm at lvcm.com
Sun Oct 2 23:54:56 UTC 2005


This sounds too weird to be true and I wanted to get someone to
verify this before filing a bug. Before starting to compose a
message, I found this thread =).

I too was having trouble with the second invocation of live TV
but was having trouble debugging it. A little divide and conquer
led to this surprising factor. Live TV fails the second time it
is attemped when the "-l" flag is used(!)>

To reproduce. After starting the backend as follows, wait 10 sec,
Watch TV, wait 10 sec, exit live TV, wait 10 sec, Watch TV.

First run the backend with this command line:

$ mythbackend -v record,channel > /tmp/mb.out 2>&1

Live TV can be started and stopped repeatedly. The output after
the second start always look like this:

2005-10-02 16:19:58.658 Getting next free recorder after : -1
2005-10-02 16:19:58.660 Card 1 is local.
2005-10-02 16:19:58.668 MainServer::HandleAnnounce Playback
2005-10-02 16:19:58.669 adding: moktoo as a client (events: 1)
2005-10-02 16:19:58.678 MainServer::HandleAnnounce Playback
2005-10-02 16:19:58.679 adding: moktoo as a client (events: 0)
2005-10-02 16:19:58.728 MainServer::HandleAnnounce Playback
2005-10-02 16:19:58.729 adding: moktoo as a client (events: 0)
2005-10-02 16:19:58.734 adding: moktoo as a remote ringbuffer
2005-10-02 16:19:58.743 TVRec(1): Changing from None to WatchingLiveTV
2005-10-02 16:19:58.743 TVRec(1): ClearFlags(FrontendReady,CancelNextRecording,
) -> RunMainLoop,
2005-10-02 16:19:58.743 TVRec(1): SetFlags(AskAllowRecording,) -> RunMainLoop,A
skAllowRecording,
2005-10-02 16:19:58.743 TVRec(1): Request: Program(no) channel() input() flags(
LiveTV,)

Next, run the backend with this command line:

$ mythbackend -v record,channel -l /tmp/mb.log

Live TV is black the second time it is entered. The log file
for the second start always look like this:

2005-10-02 16:21:27.610 Getting next free recorder after : -1
2005-10-02 16:21:27.613 Card 1 is local.
2005-10-02 16:21:27.627 MainServer::HandleAnnounce Playback
2005-10-02 16:21:27.629 adding: moktoo as a client (events: 0)
2005-10-02 16:21:27.636 TVRec(1): Request: Program(no) channel() input() flags(
KillRingBuffer,)
2005-10-02 16:21:27.637 TVRec(1): ClearFlags(WaitingForSignal,) -> RunMainLoop,
AskAllowRecording,
2005-10-02 16:21:27.638 TVRec(1): Tearing down RingBuffer
2005-10-02 16:21:27.644 TVRec(1): ClearFlags(PENDINGACTIONS,) -> RunMainLoop,As
kAllowRecording,
2005-10-02 16:21:27.646 TVRec(1): Request: Program(no) channel() input() flags(
KillRingBuffer,)


After abot 20 sec the frontend starts spewing messages like this
in a tight loop:

2005-10-02 16:21:49.115 WriteStringList: Bad socket
2005-10-02 16:21:49.115 ReadStringList: Bad socket
2005-10-02 16:21:49.115 RemoteEncoder::SendReceiveStringList(): No response.
2005-10-02 16:21:49.117 WriteStringList: Bad socket
2005-10-02 16:21:49.117 ReadStringList: Bad socket
2005-10-02 16:21:49.117 RemoteEncoder::SendReceiveStringList(): No response.

The frontend cannot talk to the backend again until the backend is
restarted.


I can repeat this with a distclean normal build or a debug build
on two different machines connecting to two different database
environments.

Can anyone else verify this?

--  bjm


More information about the mythtv-dev mailing list