]> git.openstreetmap.org Git - rails.git/blobdiff - db/migrate/008_remove_segments.rb
Pass on routing failures from MapQuest
[rails.git] / db / migrate / 008_remove_segments.rb
index cfa99adad00333405184e16521a30bb7dbf093c1..ce49e9ccaf4e76608065d8968a52a7a15c84e72f 100644 (file)
@@ -1,4 +1,4 @@
-require 'lib/migrate'
+require 'migrate'
 
 class RemoveSegments < ActiveRecord::Migration
   def self.up
@@ -44,6 +44,7 @@ class RemoveSegments < ActiveRecord::Migration
       t.column :sequence_id, :bigint, :limit => 11, :null => false
     end
     add_primary_key :current_way_nodes, [:id, :sequence_id]
+    add_index :current_way_nodes, [:node_id], :name => "current_way_nodes_node_idx"
 
     execute "TRUNCATE way_tags"
     execute "TRUNCATE ways"
@@ -56,22 +57,19 @@ class RemoveSegments < ActiveRecord::Migration
     tempfiles.each { |fn| File.chmod 0644, fn } if have_segs
 
     if have_segs
-      execute "LOAD DATA LOCAL INFILE '#{ways}' INTO TABLE ways #{csvopts} (id, user_id, timestamp) SET visible = 1, version = 1"
-      execute "LOAD DATA LOCAL INFILE '#{way_nodes}' INTO TABLE way_nodes #{csvopts} (id, node_id, sequence_id) SET version = 1"
-      execute "LOAD DATA LOCAL INFILE '#{way_tags}' INTO TABLE way_tags #{csvopts} (id, k, v) SET version = 1"
+      execute "LOAD DATA INFILE '#{ways}' INTO TABLE ways #{csvopts} (id, user_id, timestamp) SET visible = 1, version = 1"
+      execute "LOAD DATA INFILE '#{way_nodes}' INTO TABLE way_nodes #{csvopts} (id, node_id, sequence_id) SET version = 1"
+      execute "LOAD DATA INFILE '#{way_tags}' INTO TABLE way_tags #{csvopts} (id, k, v) SET version = 1"
 
       execute "INSERT INTO current_ways SELECT id, user_id, timestamp, visible FROM ways"
       execute "INSERT INTO current_way_nodes SELECT id, node_id, sequence_id FROM way_nodes"
       execute "INSERT INTO current_way_tags SELECT id, k, v FROM way_tags"
     end
 
-    # and then readd the index
-    add_index :current_way_nodes, [:node_id], :name => "current_way_nodes_node_idx"
-
     if have_segs
-      execute "LOAD DATA LOCAL INFILE '#{relations}' INTO TABLE relations #{csvopts} (id, user_id, timestamp) SET visible = 1, version = 1"
-      execute "LOAD DATA LOCAL INFILE '#{relation_members}' INTO TABLE relation_members #{csvopts} (id, member_type, member_id, member_role) SET version = 1"
-      execute "LOAD DATA LOCAL INFILE '#{relation_tags}' INTO TABLE relation_tags #{csvopts} (id, k, v) SET version = 1"
+      execute "LOAD DATA INFILE '#{relations}' INTO TABLE relations #{csvopts} (id, user_id, timestamp) SET visible = 1, version = 1"
+      execute "LOAD DATA INFILE '#{relation_members}' INTO TABLE relation_members #{csvopts} (id, member_type, member_id, member_role) SET version = 1"
+      execute "LOAD DATA INFILE '#{relation_tags}' INTO TABLE relation_tags #{csvopts} (id, k, v) SET version = 1"
 
       # FIXME: This will only work if there were no relations before the
       # migration!
@@ -84,6 +82,6 @@ class RemoveSegments < ActiveRecord::Migration
   end
 
   def self.down
-    raise IrreversibleMigration.new
+    raise ActiveRecord::IrreversibleMigration
   end
 end