I have found this extremely elaborate post by "sapintel" on the Apple Support forums. Actually, inspecting the open files and ports as described here has shown me that iTunes is in fact opening and closing files, so it may just be a progress bar issue.
How to fix Step 2 and Step 3 Errors in iTunes: Music Media Formats, and Checking Firewall Blocks.
Step 1, 2, or 3 Hangs: Problems with Media Formats.
If you have heterogenous media formats in your music files, some of them will FAIL iTunes match, causing it to hang. This is a software error in iTunes match, which should mark the files as "Not eligible" instead of remaining stuck in an endless loop. These errors never occur if all the songs in the music library are unprotected AAC 256 kbps music files encoded by iTunes 10.5.1.
There are two basic ways to upgrade your song media formats to iTunes 10.5.1 AAC encoding - encode all of them at once, or do them selectively. In either method, you must delete the original version from iTunes and your file system. If you previously loaded them to iCloud, get rid of them there also.
You will be able to see a hung file in OS/X under Activity Monitor → iTunes → Inspect Process → Open Files and Ports. In Windows you will have to use standard Task Manager inspections.
In my iTunes library, I found that certain AAC (*.m4a
) files which were encoded in before 2011 were stuck, and *.m4p
Protected AAC files.
You may convert all files which were not encoded at 256 kbps AAC with a right-mouse click. Find them:
1) individually in iTunes as you discover them in Open Files and Ports trace, or
2) by creating a sort smart playlist that matches their pattern. For example, a playlist with bit-rate < 256k.
After converting them, you MUST delete the previous file(s) from your iTunes library, move the actual file to trash, and delete the trash. Archive the files if you wish. If any of them were already matched to iTunes Match, you must delete them there also.
After getting rid of older media formats, your Open Files and Ports window should no longer show any music file open in your iTunes library.
If you have converted your music library and Step 3 is still stuck with no file open, it is likely a Firewall problem. Check the last line in Open Files and Ports, and use the information in the last rows to check your firewall settings. The upload port is shown in this form, 192.168.1.1:53089 → 72.21.214.201:https. If you see this type of row, but nothing is being uploaded, a firewall or other issue is blocking that port.
In my case the block was created by my broadband modem settings. Check with the installation guide for your modem - typically they can be managed by a http://
address such as http://192.168.1.254/
. Change the firewall settings as needed.
Unfortunately, iTunes Match really isn't made to be a backup service in this way, and it can be really easy to loose stuff if you don't have other means of recovering it.
For those songs you purchased from iTunes, you should be able to still see them in the purchased list in the iTunes store, and re-add them to your library. Many other sources, like Amazon, will also allow you to re-download their files.
If you had a Time Machine backup, maybe your old library is stored there as well?
If you happen to have an iPod, and had any music synced to it, you could actually use that as a 'backup' and pull your songs from there using an application like iRip. This would only work though if you had a device with the files actually on there, as in a iPod classic or nano, or an iOS device you had downloaded music too.
Finally, you MAY be able to contact Apple Support and see if they have any way of helping, but this may take a very long time and not actually produce anything. I have had a hard time getting support on anything with Match, so replacing an entire library may even be harder. I would recommend calling them if possible.
Best Answer
I encountered this problem, and it turned out that it was due to my ISP's traffic shaping. Uploading my music was saturating my upload bandwidth, and after about 5 minutes of that, my ISP would cut my connection to Apple's servers for a few minutes, causing step 3 to time out and the whole thing to restart.
I fixed the problem by setting up bandwidth throttling on my router while I was uploading my library. Setting it to about 80% of my maximum bandwidth worked well.