Doing a resync from mainline 8633:10895. There was one simple to resolve conflict on app/models/node.rb. Also moving the migrations for API0.6 to new sequence numbers since there was some new migrations added to mainline, where the migration numbers would conflict if not moved.

This commit is contained in:
Shaun McDonald 2008-09-25 15:06:05 +00:00
commit d9e070e069
395 changed files with 2348 additions and 25020 deletions

View file

@ -0,0 +1,50 @@
class KeyConstraints < ActiveRecord::Migration
def self.up
# Primary keys
add_primary_key :current_node_tags, [:id, :k]
add_primary_key :current_way_tags, [:id, :k]
add_primary_key :current_relation_tags, [:id, :k]
add_primary_key :node_tags, [:id, :version, :k]
add_primary_key :way_tags, [:id, :version, :k]
add_primary_key :relation_tags, [:id, :version, :k]
add_primary_key :nodes, [:id, :version]
# Remove indexes superseded by primary keys
remove_index :current_way_tags, :name => :current_way_tags_id_idx
remove_index :current_relation_tags, :name => :current_relation_tags_id_idx
remove_index :way_tags, :name => :way_tags_id_version_idx
remove_index :relation_tags, :name => :relation_tags_id_version_idx
remove_index :nodes, :name => :nodes_uid_idx
# Foreign keys (between ways, way_tags, way_nodes, etc.)
add_foreign_key :current_node_tags, [:id], :current_nodes
add_foreign_key :node_tags, [:id, :version], :nodes
add_foreign_key :current_way_tags, [:id], :current_ways
add_foreign_key :current_way_nodes, [:id], :current_ways
add_foreign_key :way_tags, [:id, :version], :ways
add_foreign_key :way_nodes, [:id, :version], :ways
add_foreign_key :current_relation_tags, [:id], :current_relations
add_foreign_key :current_relation_members, [:id], :current_relations
add_foreign_key :relation_tags, [:id, :version], :relations
add_foreign_key :relation_members, [:id, :version], :relations
# Foreign keys (between different types of primitives)
add_foreign_key :current_way_nodes, [:node_id], :current_nodes, [:id]
# FIXME: We don't have foreign keys for relation members since the id
# might point to a different table depending on the `type' column.
# We'd probably need different current_relation_member_nodes,
# current_relation_member_ways and current_relation_member_relations
# tables for this to work cleanly.
end
def self.down
raise IrreversibleMigration.new
end
end