Duplicate Records criado por find_or_create_by_

Eu tenho um objeto ActiveRecord, Corporation, e a única chamada no meu projeto para criar instâncias desse objeto se parece com:

corp = Corporation.find_or_create_by_eveid_and_user_id(self.corporation_eveid, self.account.user_id)

De alguma forma, depois que meu aplicativo estiver sendo executado por alguns dias, há registros duplicados - registro em que o eveid e o user_id têm os mesmos valores. Como isso é possível? Existe algo que eu possa estar fazendo de errado na maneira como atualizo esses registros que causariam esse problema?

Acabei adicionando um índice composto exclusivo à tabela. Isso deve resolver o problema, mas não entendo como está ocorrend

Este é o Rails 3.0.

questionAnswers(2)

yourAnswerToTheQuestion