Thanks for your reply. I did as you suggested. And I imported a few photos that I was having trouble changing the location on.
Some strange things happened and I am really at a loss...
The photos imported with no location at all (i.e. the old location that I was trying to change was not in each photo). Therefore, when I clicked on info, I was prompted to "assign a location", which I did. I then proceeded to modify the location numerous times (single and batch). With all tests the location change worked. I noticed that when doing this (changing the location by typing over a location - in the fields that appeared in the drop box below, there was small type that indicated something like "renaming the location"). I did not get this before.
I then went into my original library, to the same photos that I was having trouble modifying and that "renaming location" indication now appeard. I of course then made the location change I wanted to this single photo. The strange thing was that as soon as I did this, all of the other photos in the event reverted back to the location changes that I spent hours doing the other day. The changes were not subtle (e.g. this morning locations in all photos indicated "bali", and now the photos have specific different town names in them, which is what I spent hours doing the other day).
I am happy but at a complete loss to what is going on. I guess your tip seemed to trigger something?
It's been a long time since I rebuilt an iPhoto library - but your suggestion was right on the money. Thanks!
I too had been irritated by places not allowing the place pin to be turned yellow and adjusted/moved. (It would move, but then not stay.) I found many people describing the same problem in various threads dating back at least 6 months. It took several hours to chew through my 25000 image library, but when iPhoto finished rebuilding the thumbnail cache, places worked as described in Apple's document:
I also found this:
(image below from the article) which was a good brief summary of what boxes to tick to get things going.