spree-contrib / spree_volume_pricing

Spree extension which supports sales volume based pricing (quantity discounts).
http://guides.spreecommerce.org
BSD 3-Clause "New" or "Revised" License
68 stars 112 forks source link

db migrate failure: 20121115043422 AddDiscountTypeColumn #95

Open cgcmart opened 7 years ago

cgcmart commented 7 years ago

== 20121115043422 AddDiscountTypeColumn: migrating ============================ -- add_column(:spree_volume_prices, :discount_type, :string) rails aborted! StandardError: An error has occurred, this and all later migrations canceled:

SQLite3::SQLException: duplicate column name: discounttype: ALTER TABLE "spree volume_prices" ADD "discount_type" varchar /usr/local/rvm/gems/ruby-2.3.0/gems/sqlite3-1.3.13/lib/sqlite3/database.rb:91:in initialize' /usr/local/rvm/gems/ruby-2.3.0/gems/sqlite3-1.3.13/lib/sqlite3/database.rb:91:innew' /usr/local/rvm/gems/ruby-2.3.0/gems/sqlite3-1.3.13/lib/sqlite3/database.rb:91:in prepare' /usr/local/rvm/gems/ruby-2.3.0/gems/sqlite3-1.3.13/lib/sqlite3/database.rb:137:i nexecute' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/sqlite3_adapter.rb:232:in block in execute' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/abstract_adapter.rb:589:inblock in log' /usr/local/rvm/gems/ruby-2.3.0/gems/activesupport-5.0.1/lib/active_support/notif ications/instrumenter.rb:21:in instrument' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/abstract_adapter.rb:583:inlog' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/sqlite3_adapter.rb:232:in execute' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/abstract/schema_statements.rb:542:inadd_column' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/sqlite3_adapter.rb:373:in add_column' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:846:inblock in method_missing' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:815:in block in say_with_time' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:815:insay_with_time' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:835:in method_missing' /var/opt/gitlab/git-data/repositories/ypil-shahzeb/db/migrate/20121115043422_add _discount_type_column.rb:3:inchange' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:789:in exec_migration' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:773:inblock (2 levels) in migrate' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:772:in block in migrate' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/abstract/connection_pool.rb:398:inwith_connection' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:771:in migrate' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on/compatibility.rb:121:inmigrate' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:951:in migrate' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1212:inblock in execute_migration_in_transaction' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1280:in block in ddl_transaction' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/abstract/database_statements.rb:232:inblock in transaction' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/abstract/transaction.rb:189:in within_new_transaction' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/abstract/database_statements.rb:232:intransaction' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/transac tions.rb:211:in transaction' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1280:inddl_transaction' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1211:in execute_migration_in_transaction' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1184:inblock in migrate_without_lock' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1183:in each' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1183:inmigrate_without_lock' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1134:in migrate' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1006:inup' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:984:in migrate' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/tasks/d atabase_tasks.rb:161:inmigrate' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/railtie s/databases.rake:58:in block (2 levels) in <top (required)>' /usr/local/rvm/gems/ruby-2.3.0/gems/railties-5.0.1/lib/rails/commands/rake_proxy .rb:14:inblock in run_rake_task' /usr/local/rvm/gems/ruby-2.3.0/gems/railties-5.0.1/lib/rails/commands/rake_proxy .rb:11:in run_rake_task' /usr/local/rvm/gems/ruby-2.3.0/gems/railties-5.0.1/lib/rails/commands/commands_t asks.rb:51:inrun_command!' /usr/local/rvm/gems/ruby-2.3.0/gems/railties-5.0.1/lib/rails/commands.rb:18:in <top (required)>' bin/rails:4:inrequire' bin/rails:4:in <main>' ActiveRecord::StatementInvalid: SQLite3::SQLException: duplicate column name: di scount_type: ALTER TABLE "spree_volume_prices" ADD "discount_type" varchar /usr/local/rvm/gems/ruby-2.3.0/gems/sqlite3-1.3.13/lib/sqlite3/database.rb:91:ininitialize' /usr/local/rvm/gems/ruby-2.3.0/gems/sqlite3-1.3.13/lib/sqlite3/database.rb:91:in new' /usr/local/rvm/gems/ruby-2.3.0/gems/sqlite3-1.3.13/lib/sqlite3/database.rb:91:inprepare' /usr/local/rvm/gems/ruby-2.3.0/gems/sqlite3-1.3.13/lib/sqlite3/database.rb:137:i n execute' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/sqlite3_adapter.rb:232:inblock in execute' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/abstract_adapter.rb:589:in block in log' /usr/local/rvm/gems/ruby-2.3.0/gems/activesupport-5.0.1/lib/active_support/notif ications/instrumenter.rb:21:ininstrument' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/abstract_adapter.rb:583:in log' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/sqlite3_adapter.rb:232:inexecute' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/abstract/schema_statements.rb:542:in add_column' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/sqlite3_adapter.rb:373:inadd_column' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:846:in block in method_missing' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:815:inblock in say_with_time' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:815:in say_with_time' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:835:inmethod_missing' /var/opt/gitlab/git-data/repositories/ypil-shahzeb/db/migrate/20121115043422_add _discount_type_column.rb:3:in change' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:789:inexec_migration' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:773:in block (2 levels) in migrate' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:772:inblock in migrate' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/abstract/connection_pool.rb:398:in with_connection' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:771:inmigrate' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on/compatibility.rb:121:in migrate' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:951:inmigrate' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1212:in block in execute_migration_in_transaction' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1280:inblock in ddl_transaction' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/abstract/database_statements.rb:232:in block in transaction' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/abstract/transaction.rb:189:inwithin_new_transaction' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/abstract/database_statements.rb:232:in transaction' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/transac tions.rb:211:intransaction' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1280:in ddl_transaction' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1211:inexecute_migration_in_transaction' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1184:in block in migrate_without_lock' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1183:ineach' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1183:in migrate_without_lock' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1134:inmigrate' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1006:in up' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:984:inmigrate' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/tasks/d atabase_tasks.rb:161:in migrate' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/railtie s/databases.rake:58:inblock (2 levels) in <top (required)>' /usr/local/rvm/gems/ruby-2.3.0/gems/railties-5.0.1/lib/rails/commands/rake_proxy .rb:14:in block in run_rake_task' /usr/local/rvm/gems/ruby-2.3.0/gems/railties-5.0.1/lib/rails/commands/rake_proxy .rb:11:inrun_rake_task' /usr/local/rvm/gems/ruby-2.3.0/gems/railties-5.0.1/lib/rails/commands/commands_t asks.rb:51:in run_command!' /usr/local/rvm/gems/ruby-2.3.0/gems/railties-5.0.1/lib/rails/commands.rb:18:in <top (required)>' bin/rails:4:in require' bin/rails:4:in

' SQLite3::SQLException: duplicate column name: discount_type /usr/local/rvm/gems/ruby-2.3.0/gems/sqlite3-1.3.13/lib/sqlite3/database.rb:91:in initialize' /usr/local/rvm/gems/ruby-2.3.0/gems/sqlite3-1.3.13/lib/sqlite3/database.rb:91:innew' /usr/local/rvm/gems/ruby-2.3.0/gems/sqlite3-1.3.13/lib/sqlite3/database.rb:91:in prepare' /usr/local/rvm/gems/ruby-2.3.0/gems/sqlite3-1.3.13/lib/sqlite3/database.rb:137:i nexecute' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/sqlite3_adapter.rb:232:in block in execute' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/abstract_adapter.rb:589:inblock in log' /usr/local/rvm/gems/ruby-2.3.0/gems/activesupport-5.0.1/lib/active_support/notif ications/instrumenter.rb:21:in instrument' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/abstract_adapter.rb:583:inlog' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/sqlite3_adapter.rb:232:in execute' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/abstract/schema_statements.rb:542:inadd_column' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/sqlite3_adapter.rb:373:in add_column' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:846:inblock in method_missing' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:815:in block in say_with_time' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:815:insay_with_time' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:835:in method_missing' /var/opt/gitlab/git-data/repositories/ypil-shahzeb/db/migrate/20121115043422_add _discount_type_column.rb:3:inchange' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:789:in exec_migration' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:773:inblock (2 levels) in migrate' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:772:in block in migrate' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/abstract/connection_pool.rb:398:inwith_connection' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:771:in migrate' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on/compatibility.rb:121:inmigrate' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:951:in migrate' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1212:inblock in execute_migration_in_transaction' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1280:in block in ddl_transaction' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/abstract/database_statements.rb:232:inblock in transaction' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/abstract/transaction.rb:189:in within_new_transaction' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/connect ion_adapters/abstract/database_statements.rb:232:intransaction' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/transac tions.rb:211:in transaction' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1280:inddl_transaction' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1211:in execute_migration_in_transaction' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1184:inblock in migrate_without_lock' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1183:in each' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1183:inmigrate_without_lock' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1134:in migrate' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:1006:inup' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/migrati on.rb:984:in migrate' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/tasks/d atabase_tasks.rb:161:inmigrate' /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.1/lib/active_record/railtie s/databases.rake:58:in block (2 levels) in <top (required)>' /usr/local/rvm/gems/ruby-2.3.0/gems/railties-5.0.1/lib/rails/commands/rake_proxy .rb:14:inblock in run_rake_task' /usr/local/rvm/gems/ruby-2.3.0/gems/railties-5.0.1/lib/rails/commands/rake_proxy .rb:11:in run_rake_task' /usr/local/rvm/gems/ruby-2.3.0/gems/railties-5.0.1/lib/rails/commands/commands_t asks.rb:51:inrun_command!' /usr/local/rvm/gems/ruby-2.3.0/gems/railties-5.0.1/lib/rails/commands.rb:18:in <top (required)>' bin/rails:4:inrequire' bin/rails:4:in `
' Tasks: TOP => db:migrate (See full trace by running task with --trace)

AwakenTheJaken commented 7 years ago

Did you find a way to get this to work? Seems to me we are out of luck for Spree Versions > 3.0.0 :-1:

cgcmart commented 7 years ago

I delete that db/migrate file, rake db:migrate go ahead. But the deep issue may be the originally created database not supported by activerecords 5.