[mythtv-commits] mythtv commit: r12167 by cpinkham
mythtv at cvs.mythtv.org
mythtv at cvs.mythtv.org
Fri Dec 1 06:41:32 UTC 2006
Author: cpinkham
Date: 2006-12-01 06:41:32 +0000 (Fri, 01 Dec 2006)
New Revision: 12167
Changeset: http://cvs.mythtv.org/trac/changeset/12167
Modified:
trunk/mythtv/programs/mythbackend/autoexpire.cpp
trunk/mythtv/programs/mythbackend/autoexpire.h
trunk/mythtv/programs/mythbackend/mainserver.cpp
trunk/mythtv/programs/mythbackend/mainserver.h
Log:
A few AutoExpirer fixes required for yesterday's Storage Groups patch.
Since the Master is in charge of Storage now and slave backends don't run
the AutoExpirer, we can't reference the expirer on a slave. This was causing
segfaults on slaves with truncating delete turned on because
MainServer::m_expirer was initialized to NULL.
The expirer on the master needs to know where any truncating deletes are
occuring, so truncating deletes are now flagged in the inuseprograms table
while they are running. The expirer looks for any in-progress truncating
deletes and will skip checking filesystems that have running deletes until
the trunating delete is finished. The expirer ignores stale inuseprogram
entries.
Since slaves don't have an expirer to ask about the local encoders, just set
the truncating rate based on the number of capturecards configured. If this
turns out to be a problem, we could setup a mechanism for the slave to ask
the master how many capturecards can record to this filesystem, but that is
probably not necessary.
More information about the mythtv-commits
mailing list