app/models/referent.rb in umlaut-4.0.3 vs app/models/referent.rb in umlaut-4.1.0.pre.alpha.1

- old
+ new

@@ -388,14 +388,20 @@ end end # options => { :overwrite => false } to only enhance if not already there def enhance_referent(key, value, metadata=true, private_data=false, options = {}) + + ActiveRecord::Base.connection_pool.with_connection do return if value.nil? matches = self.referent_values.to_a.find_all do |rv| - (rv.key_name == key) && (rv.metadata == metadata) && (rv.private_data == private_data) + # We ignore #metadata and #private_data matches in overwriting + # existing value. We used to take them into account, but it triggered + # a bug in Jruby, and pretty much isn't neccesary, those fields + # are pretty useless and mostly not used and should prob be removed. + (rv.key_name == key) # && (rv.metadata == metadata) && (rv.private_data == private_data) end matches.each do |rv| unless (options[:overwrite] == false || rv.value == value) rv.value = value