The following invalidates the ActiveRecord::QueryCache.
In an initializer for patching ActiveRecord
:
ActiveRecord::Base.class_eval do
def self.race_condition_safe(&block)
begin
yield
rescue ActiveRecord::RecordNotUnique
uncached { yield }
end
end
end