UnicodeDecodeError in Gramps

Recently when working in Gramps, I had been getting the following error:

45594: ERROR: grampsapp.py: line 114: Unhandled exception
Traceback (most recent call last):
  File "/usr/lib/python3.4/site-packages/gramps/gui/editors/editperson.py", line 843, in save
    self.db.commit_person(self.obj, trans)
  File "/usr/lib/python3.4/site-packages/gramps/gen/db/write.py", line 1909, in commit_person
    person, self.person_map, PERSON_KEY, transaction, change_time)
  File "/usr/lib/python3.4/site-packages/gramps/gen/db/write.py", line 1897, in commit_base
    old_data = data_map.get(handle, txn=self.txn)
  File "/usr/lib/python3.4/site-packages/bsddb3/dbshelve.py", line 256, in get
    return pickle.loads(data)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 8: ordinal not in range(128)

It turns out the source was a “Person” entry with an “Internet” data with “Type” value “Encyclop√¶dia Britannica”. Likely there was a change in Gramps where this older database entry was no longer properly handled after a few major upgrades.

I tried editing the entry, and I tried removing it, but both attempts had the same UnicodeDecodeError when I click on the “OK” button on the “Person” window.

The solution? Export the database as Gramps XML, then create a new family tree and import the file.

Leave a Reply

Your email address will not be published. Required fields are marked *