Showing posts with label people. Show all posts
Showing posts with label people. Show all posts

Saturday, May 7, 2011

Fixing double letter issues when naming people in photos in iPhoto

Problem:
When in iPhoto and naming/identifying people using "Faces" when you type in the text field all characters typed are doubled (see below)

Cause:
An address book corruption... yeah annoying hu?

Detection:
in /var/log/system.log look for lines similar to the following:
12/2/10 12:45:00 PM AddressBookSync1871 Critical error fetching ABCDContact in context <ABManagedObjectContext: 0x10012b670>: Fatal error. The database at /Users/kurtpedrosa/Library/Application Support/AddressBook/AddressBook-v22.abcddb is corrupted. SQLite error code:11, 'database disk image is malformed'
The data that's important here is:
database at Application Support/AddressBook/AddressBook-v22.abcddb is corrupted

Solution:
Rebuild you address book database.
I'm partially referencing the instructions from this site:
http://forums.macnn.com/82/applications/431074/corrupt-address-book-how-can-i/
1) Exit iPhoto & other apps that may use the address book.
2) Backup your address book.
  • Open Address book.
  • Click on "All Contacts" and drag that into a folder of your choosing. (that was easy)
  • Make another type of backup, from address book click on the "File" menu->"Export..."->"Address Book Archive..." and save that file somewhere safe too.
  • Quit Address Book
3) Fix the address book database.
Run the following code logged in as your user from the terminal:
echo '.dump' | sqlite3 ~/Library/Application\ Support/AddressBook/AddressBook-v22.abcddb | sqlite3 ~/Library/Application\ Support/AddressBook/AddressBook-v22.abcddb.new; mv ~/Library/Application\ Support/AddressBook/AddressBook-v22.abcddb ~/Library/Application\ Support/AddressBook/AddressBook-v22.abcddb.bak; mv ~/Library/Application\ Support/AddressBook/AddressBook-v22.abcddb.new ~/Library/Application\ Support/AddressBook/AddressBook-v22.abcddb

Here is the code broken into three separate commands:
echo '.dump' | sqlite3 ~/Library/Application\ Support/AddressBook/AddressBook-v22.abcddb | sqlite3 ~/Library/Application\ Support/AddressBook/AddressBook-v22.abcddb.new
mv ~/Library/Application\ Support/AddressBook/AddressBook-v22.abcddb ~/Library/Application\ Support/AddressBook/AddressBook-v22.abcddb.bak
mv ~/Library/Application\ Support/AddressBook/AddressBook-v22.abcddb.new ~/Library/Application\ Support/AddressBook/AddressBook-v22.abcddb

Start Address Book & iPhoto, enjoy tagging faces again.