make a temporary, backup copy of your library if you don't already have one (Control-click on the library and select Duplicate from the contextual menu) and apply the two fixes below in order as needed:
Launch iPhoto with the Command+Option keys held down and rebuild the library.
Select Option #2.
You may have to reun it 2-3 times.
If the above does'nt solve the problem continue with:
Using iPhoto Library Manager to Rebuild Your iPhoto Library
- Download iPhoto Library Manager and launch.
- Click on the Add Library button, navigate to your Home/Pictures folder and select your iPhoto Library folder.
- Now that the library is listed in the left hand pane of iPLM, click on your library and go to the File ➙ Rebuild Library menu option
- In the next window name the new library and select the location you want it to be placed.
- Click on the Create button.
Note: This creates a new library based on the LIbraryData.xml file in the library and will recover Events, Albums, keywords, titles and comments but not books, calendars or slideshows. The original library will be left untouched for further attempts at fixing the problem or in case the rebuilt library is not satisfactory.
My last suggestion is:
Starting over from scratch with new library
Start over with a new library and import the Originals (iPhoto 09 and earlier) or the Masters (iPhoto 11) folder from your original library as follows:
1. Open the library package like this.
2. Launch iPhoto with the Option key held down and, when asked, select the option to create a new library.
3. Drag the Originals (iPhoto 09 and earlier) or the Masters (iPhoto 11) folder from the open iPhoto Library package into the open iPhoto window.
Click to view full size
This will create a new library with the same Events (but not necessarily the same Event names) as the original library but will not keep the metadata, albums, books slideshows and other projects.
Note: your current library will be left untouched for further attempts at a fix if so desired.