[mythtv] Ticket #6846: FreeSpace calculations don't work correctly

Michael T. Dean mtdean at thirdcontact.com
Sat Aug 15 16:06:35 UTC 2009


On 08/15/2009 11:30 AM, Eric Bosch wrote:
> MythTV wrote:
>   
>> #6846: FreeSpace calculations don't work correctly
>>
>> Comment(by sphery):
>>
>>  Is this fixed by #6582 ?
> Ok, I just tried patch 6582 and that is still not returning the correct
> results.  I think the correct way to fix this issue is to first
> determine if the special directories actually reside on the same
> physical filesystem (looking at results of df (mounted on column) or
> Filesystem column.

As Chris mentioned, it does.

>   For NFS mounts, this might be a little more complex,
> as the remote backend would have to determine the same results and
> return them.  One issue I have with it is that the correction that is
> built in for nfs mounts is not working properly either, in that the
> reported size difference is greater than the correction.

Ah, then that is the real problem.  The code assumes that any 
filesystems with a total size, available space, /and/ free space that 
are within 2MiB (or however much data can be written by the encoders 
within 5 seconds--whichever is greater) are the same filesystem.

If your NFS server is returning a wildly-different value for any of 
these than the filesystem host's local access returns, Myth will assume 
they're different filesystems.  We increased the "slop factor" from 
16kiB to 2MiB before 0.21 was released because of NFS inaccuracies ( 
http://svn.mythtv.org/trac/changeset/14924/trunk/mythtv ).

Can you post the output of:

df -k /path/to/storage/group/directory

run for each of your filesystems used by Myth from each of your hosts 
"at the same time" (ideally when no recordings are being made/when the 
filesystems are mostly "not in use").  I.e. if you have a filesystem on 
the master that's NFS mounted on a remote backend, run the command on 
both systems as close to at the same time as possible.  And/or post the 
master backend log run with -v file,schedule,extra for the period when 
you hit the backend status page, as mentioned by Chris.

Mike


More information about the mythtv-dev mailing list