diff options
author | Michael Koziarski <michael@koziarski.com> | 2009-06-26 16:59:27 +1200 |
---|---|---|
committer | Michael Koziarski <michael@koziarski.com> | 2009-06-26 17:01:21 +1200 |
commit | b5dfdc714fab7d2836e0a979ca88b4a17db9ec06 (patch) | |
tree | 642341d623b59be813290765dd08dc4b64eab464 /activerecord/lib/active_record/connection_adapters | |
parent | 00a5fd3d18ac908af688c5944922cf69c56e850b (diff) | |
download | rails-b5dfdc714fab7d2836e0a979ca88b4a17db9ec06.tar.gz rails-b5dfdc714fab7d2836e0a979ca88b4a17db9ec06.tar.bz2 rails-b5dfdc714fab7d2836e0a979ca88b4a17db9ec06.zip |
Make sure the wrapped exceptions also have the original exception available.
[#2419 state:committed]
Diffstat (limited to 'activerecord/lib/active_record/connection_adapters')
3 files changed, 5 insertions, 5 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb b/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb index ae065e6bc1..83cb9cff15 100644 --- a/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb +++ b/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb @@ -568,9 +568,9 @@ module ActiveRecord def translate_exception(exception, message) case exception.errno when 1062 - RecordNotUnique.new(message) + RecordNotUnique.new(message, exception) when 1452 - InvalidForeignKey.new(message) + InvalidForeignKey.new(message, exception) else super end diff --git a/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb b/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb index 24482aa19a..e77ae93c21 100644 --- a/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb +++ b/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb @@ -944,9 +944,9 @@ module ActiveRecord def translate_exception(exception, message) case exception.message when /duplicate key value violates unique constraint/ - RecordNotUnique.new(message) + RecordNotUnique.new(message, exception) when /violates foreign key constraint/ - InvalidForeignKey.new(message) + InvalidForeignKey.new(message, exception) else super end diff --git a/activerecord/lib/active_record/connection_adapters/sqlite_adapter.rb b/activerecord/lib/active_record/connection_adapters/sqlite_adapter.rb index 1c2688ba9d..5e5e30776a 100644 --- a/activerecord/lib/active_record/connection_adapters/sqlite_adapter.rb +++ b/activerecord/lib/active_record/connection_adapters/sqlite_adapter.rb @@ -435,7 +435,7 @@ module ActiveRecord def translate_exception(exception, message) case exception.message when /column(s)? .* (is|are) not unique/ - RecordNotUnique.new(message) + RecordNotUnique.new(message, exception) else super end |