[mythtv-users] use frontend diskspace for recordings ?
Michael T. Dean
mtdean at thirdcontact.com
Tue Nov 1 11:37:52 EST 2005
Scot L. Harris wrote:
>On Tue, 2005-11-01 at 08:51, Mark Knecht wrote:
>
>
>>Yes, it is possible. I partitioned my 250GB frontend only machine as
>>10GB for Gentoo and 240GB in a separate partition. I then made the
>>large partition available through NFS and mounted it on the backend as
>>the location to store recordings.
>>
>>While recording uses network bandwidth, the nice thing is that this
>>frontend is the main family system in the family room and there is no
>>network traffic when watching playback. (On that frontend)
>>
>>
>Is that really true? I thought the frontend would contact the backend
>requesting the recording.
>
Only if the file isn't found on the filesystem.
> The backend then streams the recording to the
>frontend. In this case it would pull it over NFS then send it to the
>frontend.
>
>
For exactly this reason.
>If I understand mythtv correctly the frontend does not really know where
>the recordings are stored. It asks the backend system to supply that as
>needed.
>
>
The frontend *always* checks the filesystem first. If the file exists
there--whether it's a local filesystem or a network-mounted filesystem
(NFS/Samba/whatever)--it plays it through the filesystem instead of
wasting the effort of streaming it.
>In a previous thread I understood that changes would have to be made to
>the database if a slave backend NFS mounted the recordings directory on
>the master backend and subsequently the slaves recordings directory was
>made local.
>
True--if you /change/ locations. Myth doesn't know whether a directory
is NFS mounted or not, so if you have the same location before and
after, it would work. In other words, if the file paths are the same
before and after the change *from the perspective of the Myth box that
recorded the file*, no database changes are required.
So, if you start with an NFS mount of the master backend's recordings
directory and decide to use local storage instead, you would have to
either a) modify the database so it thinks the master backend recorded
everything or b) move the recordings that the slave backend recorded to
the slave backend's new local recordings directory. Option a is
significantly easier as it can be done with a very fast SQL UPDATE
statment--as opposed to copying multiple gigabytes of data across a
network. However, frontends that can still find the file locally would
be able to play the files (i.e. those that still NFS mount the master
backend recordings directory and a frontend on the master backend).
>Any recordings made by the slave when the NFS was in place
>would not be found when the backend checked the database.
>
>
This thread?
http://www.gossamer-threads.com/lists/mythtv/users/157757#157757 .
Also, it's not clear from Mark's post if his frontend is also running a
backend. If not, I may not have been general enough in my
interpretation of the code. It's possible that there may exist a
RecordFilePrefix for a frontend only machine, in which case the
recording will be found on the filesystem without requiring the video be
streamed.
Mark will have to tell you how he got the RecordFilePrefix, though. It
doesn't seem to be a part of a typical frontend-only configuration
(although I haven't, yet, built a frontend-only system, so I don't know
for sure), but it's possible he configured his frontend as a
frontend/backend combo (even without capture cards) to allow the
frontend to do commflagging/transcoding jobs--at which point he would
have a RecordFilePrefix. Then again, it seems that just manually
inserting a RecordFilePrefix for the frontend's hostname would cause it
to work, too.
Mike
More information about the mythtv-users
mailing list