I was thinking there could possibly be a race condition happening on production. I have a custom save method in the Name model that checks the primary boolean. It's possible multiple writes are being performed in quick succession, before the primary values are properly set. People might be clicking save multiple times.