aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib
diff options
context:
space:
mode:
Diffstat (limited to 'activerecord/lib')
-rwxr-xr-xactiverecord/lib/active_record/validations.rb14
1 files changed, 8 insertions, 6 deletions
diff --git a/activerecord/lib/active_record/validations.rb b/activerecord/lib/active_record/validations.rb
index 5e2f710db6..72c48d1e2a 100755
--- a/activerecord/lib/active_record/validations.rb
+++ b/activerecord/lib/active_record/validations.rb
@@ -654,13 +654,15 @@ module ActiveRecord
condition_params << record.send(:id)
end
- results = connection.select_all(
- construct_finder_sql(
- :select => "#{attr_name}",
- :from => "#{finder_class.quoted_table_name}",
- :conditions => [condition_sql, *condition_params]
+ results = finder_class.with_exclusive_scope do
+ connection.select_all(
+ construct_finder_sql(
+ :select => "#{attr_name}",
+ :from => "#{finder_class.quoted_table_name}",
+ :conditions => [condition_sql, *condition_params]
+ )
)
- )
+ end
unless results.length.zero?
found = true