[mythtv-users] Multiple Frontends / Backends

Bruce Markey bjm at lvcm.com
Thu Jul 1 17:04:37 EDT 2004

Darryl Okahata wrote:
> Bruce Markey <bjm at lvcm.com> wrote:
>>I've been staying out of this but there still seems to be some
>>confusion here...
> However, this doesn't answer John's question:

John's question was "Will I be able to watch the recorded
programs still?" (as you've quoted below ;-) and the answer
to John's question is "yes". The frontend will be able to
playback files the frontend finds in the "RecordFilePrefix"

>>	Now, let's say something like this happens:
>>	1. Slave records a program, stores it in NFS.
>>	2. Slave then is turned off/goes down/whatever.
>>	3. Files are on master but slave is unreachable.
>>	Will I be able to watch the recorded programs still?
> Does the master backend actually recognize that the recorded programs
> are on a shared directory, and adjust the database accordingly (the
> "recorded" table in mythconverg)?

This is your question and not John's question and the answer
is "no". The master backend does not ever change the hostname
field for a recording after it has been recorded (see, very
different questions, yes? ;-).

The master backend has no knowledge that directory is currently
exported and may or may not be mounted on any other machine. It
looks for the files in the path stored in "RecordFilePrefix"
which may include files that it did not record itself.

>  The reason I ask is that the database
> contains the name of the backend (slave, in this example) that recorded
> the show.  If the slave is down, can a frontend still show a program
> that the slave recorded, if the show is in a shared directory accessible
> by the master backend?

Yet another question but you left out a clause. The answer to
the completed question will be "yes", the master can stream a
file that it finds in "RecordFilePrefix".

If the frontend was on the same host as the master backend, it
could read the file directly without having to stream from any
backend. Therefore we now need a third frontend only machine
without a "RecordFilePrefix" to the NFS mounted dir. The file
was recorded by "slave" and written to the disk on "master".
"frontend" makes a request to "master" to playback the file.
"master" sees that it has chanid_starttime_endtime.nuv in it's
directory and can stream this file to "frontend".

Robert added this feature called "Master Backend Override" to
optimize some things a bit when using NFS. From the help text:

  "If enabled, the master backend will stream and delete files
   if it finds them in the video directory. Useful if you are using
   a central storage location, like a NFS share, and your slave
   backend isn't running."

This does not need to know if the salve is running, if the slave
host currently has the dir mounted, or even if the slave machine
is booted up. It just looks for files in "RecordFilePrefix". This
also does not modify the hostnames in the database.

--  bjm

More information about the mythtv-users mailing list