[mythtv-commits] Ticket #4398: Changeset 15257 breaks myth backend startup in some cases
MythTV
mythtv at cvs.mythtv.org
Mon Dec 31 03:24:47 UTC 2007
#4398: Changeset 15257 breaks myth backend startup in some cases
----------------------------------------+-----------------------------------
Reporter: patrickhdonnelly at gmail.com | Owner: dblain
Type: defect | Status: new
Priority: major | Milestone: unknown
Component: upnp | Version: head
Severity: medium | Mlocked: 0
----------------------------------------+-----------------------------------
Some background:
After applying 15257, my main backend-only server apparently stopped
working, in that it would never open a listening sicket on 6543. Further
debugging revealed that it was in fact running in a sort of half-started
state, stuck spewing *tons* of entries into the upnpmedia table.
Disabling upnp temporarily fixed the issue.
Tracking down when the table was created, I found in the same commit a
function that populates upnpmedia recursively from the directory set at
'VideoStartupDir' in the settings table; for whatever reason (this has
always been a backend-only box so maybe it just never got set?), this was
missing for this host; as a result it apparently started from "/" and
began indexing there, not ideal but not the end of the world as mythtv is
a very limited user. Problem is, somewhere along the line I had a symlink
pointing from a child directory to a parent, resulting in an infinite
loop, a hung mythbackend, and a shit-load of binlog files on my mysql
server.
After manually setting 'VideoStartupDir' to something sane, everything's
back to usual; however
a) UPnpCDSVideo::buildFileList needs some sanity checking; it should error
out or just exit cleanly if VideoStartupDir doesn't exist in the settings
db
b) buildFileList absolutely needs to make sure it isn't indexing the same
directory more than once
A patch for a is obviously fairly trivial, I'll try and submit something
to handle b in a couple days, perhaps there's something in QT already to
iterate over a directory tree?
--
Ticket URL: <http://svn.mythtv.org/trac/ticket/4398>
MythTV <http://svn.mythtv.org/trac>
MythTV
More information about the mythtv-commits
mailing list