When my friend and I were recently working with iPhoto we found ourselves unable to access her iPhoto library after upgrading from iPhoto 5 to iPhoto 6. At first I thought that it was a problem related to iPhoto Library Manager. But my friend thought that there might be some locked image files in the library that might be causing the problem, even though logically this doesn't make any sense. (She got the idea because of the error message provided by iPhoto and the fact that folder permissions were set appropriately.)
As it turns out the problem was caused by locked image files... And while I expect that TSers inclined to upgrade to iPhoto 6 have already done so, I am posting the fix here Just In Case... Who knows? This may appear again in future upgrades...
(How did I find the answer? I Googled the problem and the first couple of hits were for forums where the problem had been discussed.)
In certain situations, you may see a message that says "Unable to upgrade this photo library" the first time you launch iPhoto after upgrading to iLife '06.
There are two potential causes for this issue:
The current user does not have read-write access to some of the photos in the photo library OR
There are locked files somewhere inside your iPhoto Library.
Unlocking files in your iPhoto Library
When you don't know exactly where the locked files are, and especially if they are located in more than one folder, the easiest way to unlock them will be using the Terminal (located in the Utilities folder inside the Applications folder). Follow these steps:
1. Open the Terminal.
2. At the prompt, type:
sudo chflags -R nouchg
Note: If you highlight the text above, you will see that there's a space following nouchg. You must type this space. Also, the "r" in -R must be uppercase as shown.
3. From a Finder window, drag your iPhoto Library folder onto the Terminal window. This will add its pathname to the command. When you're done, the command will look something like:
sudo chflags -R nouchg /Users/Your_Name/Pictures/iPhoto\ Library/
4. Press the Return key to execute the command. You will be prompted for your administrator password; type it, and press Return again.