Another reason to ditch MythTV

MythTV is very pretty and featureful, but has always struck me as a project that cares more about making it further so than trying to create a robust, bug-free core. Today I came across the sort of bug that exemplifies this.

I decided to record the film “Unknown”, starring Liam Neeson as a man who wakes from a coma to discover his life has been stolen. Here we have the film in the programme listing view:

MythTV programme listing

Coincidentally, the MythTV front-end also lists time periods where it does not have any listings data as “Unknown”. The MythTV frontend rightly prevents the user from attempting to record these blocks.

MythTV no data

Why is this an issue? It turns out that the MythTV front-end prevents you from recording any entry entitled “Unknown”, making it impossible to schedule recording of the aforementioned film. Clicking on the entry does nothing. Bringing up the menu does give you the option to record, but fails to schedule it.

MythTV record attempt

The only way I found to schedule the recording was to do it from the HTML interface. Bad news for non-computer savvy Liam Neeson fans.

Just for the record, the front-end version was a 13/01/2013 build of the 0.26-fixes branch.

Updated 14/01/2013: Someone else apparently noticed around the same time.

Random Slowness with Western Digital Caviar Green Hard Drives

Several months ago, my MythTV server started acting strangely. At seemingly random intervals, the system would experience high IO, completely crippling the responsiveness of the system to the extent that it would take minutes to even establish an SSH connection to the machine. There appeared to be no way to trigger the problem and running my own high-IO tasks showed no issues. The high-IO periods lasted for at least several minutes but sometimes occurred days apart, and as they wrecked the machine's responsiveness, it was also practically impossible to monitor the system when the symptoms did appear.

Over the months, I tried changing the root file-system, searching for known IO issues with the Linux kernel, XFS or MythTV, checking fragmentation, swap-utilisation, IO-priority settings and running a multitude of different kernels including low-latency versions, all to no avail. The times I managed to SSH into the machine during a high-IO attack, running top and latencytop were equally unrevealing. It was only recently that I finally discovered the culprit: the Western Digital Caviar Green 1.5TB hard drive.

It appears that the drive randomly enters periods where IO radically slows for periods of minutes, then recovers and behaves normally until the next one. There are no other signs that anything else is wrong with the drive such as strange noises, bad sectors or SMART warnings. The drive model in question is a 'WDC WD15EADS-00P8B0' and is only just over a year old which means the symptoms must have started manifesting not long after purchase.

As the problem isn't reproducible on demand, I can't give solid IO performance figures. What I can state is that when the problem has manifested at boot time, I've given up waiting after tens of minutes for a system that usually boots in less that one. I can't imagine that extensive amounts of data are read during boot, which makes me wonder if the problem might be due to seeking rather than actual read speeds. Either way, the result is an unusable system.

I've found postings on these issues here, here and here which indicate the issues affect only specific models. As far as I can tell, Western Digital don't seem to have acknowledged any issues with this drive, nor provided any sort of firmware update that might fix it. As the symptoms don't match conventional signs of drive-failure (it's unclear if the problem is even physical), I can only imagine how many others are experiencing these issues without realising the cause.

I'm not going to condemn Western Digital drives outright. The 2.5" 'WDC WD3200BEVT-35ZCT1' SATA drive in my laptop has been absolutely fine and is also the first laptop hard-drive I've owned that is so quiet that I actually need to look at the activity LED to judge IO load. However, I find it disappointing that Western Digital seems to have done so little to acknowledge what is clearly an issue affecting a number of people.

Now let's see if I can get Western Digital to give me a RMA code.