iTunes freezes up randomly
Short version: This turns out to be a QNAP TS-209 firmware problem and not another reason to eye iTunes suspiciously.
Whenever I opened iTunes or tried to play music it would sieze up and eventually (after minutes) return to playing music or videos. But it would become infuriatingly unresponsive for long minutes. Downloading new content from the iTunes music store would stall and invariably fail with errors writing to the disc, or timeouts from ITMS.
I thought this had something to do with the iTunes 7.6 upgrade. The freezing up and stalling behaviour happened at the same time as the upgrade, where I lost the ability to hear audio on my TV shows and videos purchased from iTunes, other than by using my iPod. The audio problem was later solved by upgrading to a patch version Quicktime
Anyway, the culprit turned out to be my QNAP TS-209 drive firmware. My iTunes music is stored on the QNAP Network Attached Storage, and this had been working nicely for some time. I had upgraded to a new version of QNAP TS-209 firmware shortly before the 7.6 upgrade.
It turns out that the SAMBA support in the version of TS-209 firmware I upgraded to was awful. I was having mysterious problems with my subversion repository too, and my F-Secure firewalls were complaining about rogue packets from the TS-209 as well, so it eventually clicked that it was a dud firmware upgrade. I checked the QNAP site and they had a new version of TS-209 firmware available (1.1.5 Build 080128) which listed in the release notes:
For this version, QNAP added the following new features to TS-209 Turbo NAS:
# Update TwonkyMedia to 4.4.4.
# Add PHP module, mcrypt (Make phpMyAdmin run more smoothly).
For this version, QNAP fixed the following features to TS-209 Turbo NAS:
# Fixed RR incremental function doesn’t work normally.
# Change tmpfs size to 16MB, due to 3-party application MLDonkey(mlnet) can’t be run normally.
# Fixed Unable to play slideshow without logging in QMultimedia.
# Fixed subfolder access issue when using MAC OS 10.5.1 via AFP protocol (Due to the folder access permission is not 777). (*1)
# Fixed After format USB disk, sometimes can’t connect to NAS via SMB/AFP.
# Fixed PHP module, web server cache issue (/tmp burst).
# Fixed SAMBA compatible issue.
Nice of them to put the SAMBA issue right at the end, and with such a verbose description too!