]> source.dussan.org Git - redmine.git/commitdiff
Fixed migration broken with Rails 3.1.3 (#10320).
authorJean-Philippe Lang <jp_lang@yahoo.fr>
Sat, 25 Feb 2012 11:46:19 +0000 (11:46 +0000)
committerJean-Philippe Lang <jp_lang@yahoo.fr>
Sat, 25 Feb 2012 11:46:19 +0000 (11:46 +0000)
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@8996 e93f8b46-1217-0410-a6f0-8f06a7374b81

db/migrate/20120223110929_change_attachments_container_defaults.rb

index 39af099f8dc439449e23a5d981dc1afc085cbb3b..f959f4c339d54c5b20db8a6bc320d213a770811f 100644 (file)
@@ -1,13 +1,25 @@
 class ChangeAttachmentsContainerDefaults < ActiveRecord::Migration
   def self.up
+    # Need to drop the index otherwise the following error occurs in Rails 3.1.3:
+    #
+    # Index name 'temp_index_altered_attachments_on_container_id_and_container_type' on
+    # table 'altered_attachments' is too long; the limit is 64 characters
+    remove_index :attachments, [:container_id, :container_type]
+
     change_column :attachments, :container_id, :integer, :default => nil, :null => true
     change_column :attachments, :container_type, :string, :limit => 30, :default => nil, :null => true
     Attachment.update_all "container_id = NULL", "container_id = 0"
     Attachment.update_all "container_type = NULL", "container_type = ''"
+
+    add_index :attachments, [:container_id, :container_type]
   end
 
   def self.down
+    remove_index :attachments, [:container_id, :container_type]
+
     change_column :attachments, :container_id, :integer, :default => 0, :null => false
     change_column :attachments, :container_type, :string, :limit => 30, :default => "", :null => false
+
+    add_index :attachments, [:container_id, :container_type]
   end
 end