diff options
author | Mike Gunderloy <MikeG1@larkfarm.com> | 2008-12-29 20:46:20 -0600 |
---|---|---|
committer | Yehuda Katz <wycats@gmail.com> | 2009-01-01 00:13:11 -0800 |
commit | abfa46e3a6ba0e91f377a073d208f31f99a7a008 (patch) | |
tree | 1e5ac0c1dacd36d880e089ac1963a0c93ca7f432 /activerecord | |
parent | ab7c25d51174779547ab74bcd23e40204891e370 (diff) | |
download | rails-abfa46e3a6ba0e91f377a073d208f31f99a7a008.tar.gz rails-abfa46e3a6ba0e91f377a073d208f31f99a7a008.tar.bz2 rails-abfa46e3a6ba0e91f377a073d208f31f99a7a008.zip |
Add transaction check to SQLite2 adapter to fix test_sqlite_add_column_in_transaction_raises_statement_invalid [#1669 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
Diffstat (limited to 'activerecord')
-rw-r--r-- | activerecord/lib/active_record/connection_adapters/sqlite_adapter.rb | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/sqlite_adapter.rb b/activerecord/lib/active_record/connection_adapters/sqlite_adapter.rb index 84f8c0284e..9387cf8827 100644 --- a/activerecord/lib/active_record/connection_adapters/sqlite_adapter.rb +++ b/activerecord/lib/active_record/connection_adapters/sqlite_adapter.rb @@ -402,6 +402,10 @@ module ActiveRecord end def add_column(table_name, column_name, type, options = {}) #:nodoc: + if @connection.respond_to?(:transaction_active?) && @connection.transaction_active? + raise StatementInvalid, 'Cannot add columns to a SQLite database while inside a transaction' + end + alter_table(table_name) do |definition| definition.column(column_name, type, options) end |