On Wed, June 16, 2010 7:39 pm, James Trietsch wrote: > Eureka! The hat goes on the head! (Sorry, couldn't resist a quote from > Futurama) > > I fixed the sporadic immediate shutdown issue. I had the good fortune of > watching it crash right in front of me after finishing a recording. I > checked a few things and found the filesystem was nearing capacity (again, > the clean-out daemon runs under the GUI), so I deleted a few things and > tried the GUI and it came up! A-ha! > > Long story short, every time the remaining free space fell under the > deletion minimums, the GUI stopped working. I enlisted a host of print > statements to narrow down where it was crashing and on what particular > program entry. It was giving up trying to find the last-accessed time for > a particular MPEG file. > > I went to check the file and found out I had an orphaned FXD! The FXD > existed and was being put into the menu but the MPEG had somehow been > removed. It was trying to find the last-accessed time for a nonexistent > file. Why it was silently crashing, I'm not sure (unless it has to do with > that process running as a daemon). I deleted the orphan FXD and everything > is back to normal. It even cleaned up the directory back above space > minimums. > > By the way, the check on last modified time is something I added myself > (and haven't submitted yet) because I had run into trouble where if the > Freevo was recording and ran out of space while you were watching a > previously recorded show that happened to be the best candidate for > deletion... it would delete it while you were watching. Or it would delete > it right after you finished watching it, so you never got a chance to mark > it to keep if you wanted to keep it. I put in some code that anything > accessed in the last 5 minutes would not be put on the candidate list and > it seems to work. But now I may need to add some error-trapping to it. Or > something to look for orphaned FXDs and/or MPEGs couldn't hurt either. >
Interesting, an edge case I hadn't considered. I'm in the process of rewriting the Recording Manager as a UPnP Server and a client Plugin. This is to fix the problem of the GUI having to be active to clean up the disk if it gets full. At the moment I have a separate backend server running 24x7 and a frontend that is only on when needed, so I need a separate app running on the server to clean up the disk. Making it UPnP means it can export the recordings to XBMC/Myth/Or anything else that understands UPnP Content Directory Servers and means I don't have to mount the disk over NFS. I may steal your idea and add it to the server process to catch this edge case :-) Cheers Adam ------------------------------------------------------------------------------ ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo _______________________________________________ Freevo-users mailing list Freevo-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freevo-users