1 class CreateOsmDb < ActiveRecord::Migration[4.2]
3 create_table "current_nodes", :id => false do |t|
4 t.column "id", :bigint, :null => false
5 t.column "latitude", :float, :limit => 53
6 t.column "longitude", :float, :limit => 53
7 t.column "user_id", :bigint
8 t.column "visible", :boolean
9 t.column "tags", :text, :default => "", :null => false
10 t.column "timestamp", :datetime
13 add_index "current_nodes", ["id"], :name => "current_nodes_id_idx"
14 add_index "current_nodes", %w[latitude longitude], :name => "current_nodes_lat_lon_idx"
15 add_index "current_nodes", ["timestamp"], :name => "current_nodes_timestamp_idx"
17 create_table "current_segments", :id => false do |t|
18 t.column "id", :bigint, :null => false
19 t.column "node_a", :bigint
20 t.column "node_b", :bigint
21 t.column "user_id", :bigint
22 t.column "visible", :boolean
23 t.column "tags", :text, :default => "", :null => false
24 t.column "timestamp", :datetime
27 add_index "current_segments", %w[id visible], :name => "current_segments_id_visible_idx"
28 add_index "current_segments", ["node_a"], :name => "current_segments_a_idx"
29 add_index "current_segments", ["node_b"], :name => "current_segments_b_idx"
31 create_table "current_way_segments", :id => false do |t|
32 t.column "id", :bigint
33 t.column "segment_id", :bigint
34 t.column "sequence_id", :bigint
37 add_index "current_way_segments", ["segment_id"], :name => "current_way_segments_seg_idx"
38 add_index "current_way_segments", ["id"], :name => "current_way_segments_id_idx"
40 create_table "current_way_tags", :id => false do |t|
41 t.column "id", :bigint
42 t.column "k", :string, :default => "", :null => false
43 t.column "v", :string, :default => "", :null => false
46 add_index "current_way_tags", ["id"], :name => "current_way_tags_id_idx"
47 add_index "current_way_tags", "v", :name => "current_way_tags_v_idx"
49 create_table "current_ways", :id => false do |t|
50 t.column "id", :bigserial, :primary_key => true, :null => false
51 t.column "user_id", :bigint
52 t.column "timestamp", :datetime
53 t.column "visible", :boolean
56 create_table "diary_entries", :id => false do |t|
57 t.column "id", :bigserial, :primary_key => true, :null => false
58 t.column "user_id", :bigint, :null => false
59 t.column "title", :string
60 t.column "body", :text
61 t.column "created_at", :datetime
62 t.column "updated_at", :datetime
65 create_table "friends", :id => false do |t|
66 t.column "id", :bigserial, :primary_key => true, :null => false
67 t.column "user_id", :bigint, :null => false
68 t.column "friend_user_id", :bigint, :null => false
71 add_index "friends", ["friend_user_id"], :name => "user_id_idx"
73 create_table "gps_points", :id => false do |t|
74 t.column "altitude", :float
75 t.column "user_id", :integer
76 t.column "trackid", :integer
77 t.column "latitude", :integer
78 t.column "longitude", :integer
79 t.column "gpx_id", :integer
80 t.column "timestamp", :datetime
83 add_index "gps_points", %w[latitude longitude user_id], :name => "points_idx"
84 add_index "gps_points", ["user_id"], :name => "points_uid_idx"
85 add_index "gps_points", ["gpx_id"], :name => "points_gpxid_idx"
87 create_table "gpx_file_tags", :id => false do |t|
88 t.column "gpx_id", :bigint, :default => 0, :null => false
89 t.column "tag", :string
90 t.column "id", :bigserial, :primary_key => true, :null => false
93 add_index "gpx_file_tags", ["gpx_id"], :name => "gpx_file_tags_gpxid_idx"
95 create_table "gpx_files", :id => false do |t|
96 t.column "id", :bigserial, :primary_key => true, :null => false
97 t.column "user_id", :bigint
98 t.column "visible", :boolean, :default => true, :null => false
99 t.column "name", :string, :default => "", :null => false
100 t.column "size", :bigint
101 t.column "latitude", :float, :limit => 53
102 t.column "longitude", :float, :limit => 53
103 t.column "timestamp", :datetime
104 t.column "public", :boolean, :default => true, :null => false
105 t.column "description", :string, :default => ""
106 t.column "inserted", :boolean
109 add_index "gpx_files", ["timestamp"], :name => "gpx_files_timestamp_idx"
110 add_index "gpx_files", %w[visible public], :name => "gpx_files_visible_public_idx"
112 create_table "gpx_pending_files", :id => false do |t|
113 t.column "originalname", :string
114 t.column "tmpname", :string
115 t.column "user_id", :bigint
118 create_table "messages", :id => false do |t|
119 t.column "id", :bigserial, :primary_key => true, :null => false
120 t.column "user_id", :bigint, :null => false
121 t.column "from_user_id", :bigint, :null => false
122 t.column "from_display_name", :string, :default => ""
123 t.column "title", :string
124 t.column "body", :text
125 t.column "sent_on", :datetime
126 t.column "message_read", :boolean, :default => false
127 t.column "to_user_id", :bigint, :null => false
130 add_index "messages", ["from_display_name"], :name => "from_name_idx"
132 create_table "meta_areas", :id => false do |t|
133 t.column "id", :bigserial, :primary_key => true, :null => false
134 t.column "user_id", :bigint
135 t.column "timestamp", :datetime
138 create_table "nodes", :id => false do |t|
139 t.column "id", :bigint
140 t.column "latitude", :float, :limit => 53
141 t.column "longitude", :float, :limit => 53
142 t.column "user_id", :bigint
143 t.column "visible", :boolean
144 t.column "tags", :text, :default => "", :null => false
145 t.column "timestamp", :datetime
148 add_index "nodes", ["id"], :name => "nodes_uid_idx"
149 add_index "nodes", %w[latitude longitude], :name => "nodes_latlon_idx"
151 create_table "segments", :id => false do |t|
152 t.column "id", :bigint
153 t.column "node_a", :bigint
154 t.column "node_b", :bigint
155 t.column "user_id", :bigint
156 t.column "visible", :boolean
157 t.column "tags", :text, :default => "", :null => false
158 t.column "timestamp", :datetime
161 add_index "segments", ["node_a"], :name => "street_segments_nodea_idx"
162 add_index "segments", ["node_b"], :name => "street_segments_nodeb_idx"
163 add_index "segments", ["id"], :name => "street_segment_uid_idx"
165 create_table "users", :id => false do |t|
166 t.column "email", :string
167 t.column "id", :bigserial, :primary_key => true, :null => false
168 t.column "token", :string
169 t.column "active", :integer, :default => 0, :null => false
170 t.column "pass_crypt", :string
171 t.column "creation_time", :datetime
172 t.column "timeout", :datetime
173 t.column "display_name", :string, :default => ""
174 t.column "preferences", :text
175 t.column "data_public", :boolean, :default => false
176 t.column "description", :text, :default => "", :null => false
177 t.column "home_lat", :float, :limit => 53, :default => 1
178 t.column "home_lon", :float, :limit => 53, :default => 1
179 t.column "within_lon", :float, :limit => 53
180 t.column "within_lat", :float, :limit => 53
181 t.column "home_zoom", :integer, :limit => 2, :default => 3
184 add_index "users", ["email"], :name => "users_email_idx"
185 add_index "users", ["display_name"], :name => "users_display_name_idx"
187 create_table "way_segments", :id => false do |t|
188 t.column "id", :bigint, :default => 0, :null => false
189 t.column "segment_id", :integer
190 t.column "version", :bigint, :default => 0, :null => false
191 t.column "sequence_id", :bigint, :null => false
194 add_primary_key "way_segments", %w[id version sequence_id]
196 create_table "way_tags", :id => false do |t|
197 t.column "id", :bigint, :default => 0, :null => false
198 t.column "k", :string
199 t.column "v", :string
200 t.column "version", :bigint
203 add_index "way_tags", %w[id version], :name => "way_tags_id_version_idx"
205 create_table "ways", :id => false do |t|
206 t.column "id", :bigint, :default => 0, :null => false
207 t.column "user_id", :bigint
208 t.column "timestamp", :datetime
209 t.column "version", :bigint, :null => false
210 t.column "visible", :boolean, :default => true
213 add_primary_key "ways", %w[id version]
214 add_index "ways", ["id"], :name => "ways_id_version_idx"