X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/b095b59d5e0ee805e49980af80b21bd1acff1345..778659a78cdbdbf03014943b9ce85b990daa8cb1:/db/structure.sql diff --git a/db/structure.sql b/db/structure.sql index 1d6170bc4..c7e26ac66 100644 --- a/db/structure.sql +++ b/db/structure.sql @@ -158,9 +158,9 @@ SET default_with_oids = false; CREATE TABLE acls ( id integer NOT NULL, address inet, - k character varying(255) NOT NULL, - v character varying(255), - domain character varying(255) + k character varying NOT NULL, + v character varying, + domain character varying ); @@ -183,14 +183,47 @@ CREATE SEQUENCE acls_id_seq ALTER SEQUENCE acls_id_seq OWNED BY acls.id; +-- +-- Name: changeset_comments; Type: TABLE; Schema: public; Owner: -; Tablespace: +-- + +CREATE TABLE changeset_comments ( + id integer NOT NULL, + changeset_id bigint NOT NULL, + author_id bigint NOT NULL, + body text NOT NULL, + created_at timestamp without time zone NOT NULL, + visible boolean NOT NULL +); + + +-- +-- Name: changeset_comments_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE changeset_comments_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: changeset_comments_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE changeset_comments_id_seq OWNED BY changeset_comments.id; + + -- -- Name: changeset_tags; Type: TABLE; Schema: public; Owner: -; Tablespace: -- CREATE TABLE changeset_tags ( changeset_id bigint NOT NULL, - k character varying(255) DEFAULT ''::character varying NOT NULL, - v character varying(255) DEFAULT ''::character varying NOT NULL + k character varying DEFAULT ''::character varying NOT NULL, + v character varying DEFAULT ''::character varying NOT NULL ); @@ -230,16 +263,26 @@ CREATE SEQUENCE changesets_id_seq ALTER SEQUENCE changesets_id_seq OWNED BY changesets.id; +-- +-- Name: changesets_subscribers; Type: TABLE; Schema: public; Owner: -; Tablespace: +-- + +CREATE TABLE changesets_subscribers ( + subscriber_id bigint NOT NULL, + changeset_id bigint NOT NULL +); + + -- -- Name: client_applications; Type: TABLE; Schema: public; Owner: -; Tablespace: -- CREATE TABLE client_applications ( id integer NOT NULL, - name character varying(255), - url character varying(255), - support_url character varying(255), - callback_url character varying(255), + name character varying, + url character varying, + support_url character varying, + callback_url character varying, key character varying(50), secret character varying(50), user_id integer, @@ -280,8 +323,8 @@ ALTER SEQUENCE client_applications_id_seq OWNED BY client_applications.id; CREATE TABLE current_node_tags ( node_id bigint NOT NULL, - k character varying(255) DEFAULT ''::character varying NOT NULL, - v character varying(255) DEFAULT ''::character varying NOT NULL + k character varying DEFAULT ''::character varying NOT NULL, + v character varying DEFAULT ''::character varying NOT NULL ); @@ -328,7 +371,7 @@ CREATE TABLE current_relation_members ( relation_id bigint NOT NULL, member_type nwr_enum NOT NULL, member_id bigint NOT NULL, - member_role character varying(255) NOT NULL, + member_role character varying NOT NULL, sequence_id integer DEFAULT 0 NOT NULL ); @@ -339,8 +382,8 @@ CREATE TABLE current_relation_members ( CREATE TABLE current_relation_tags ( relation_id bigint NOT NULL, - k character varying(255) DEFAULT ''::character varying NOT NULL, - v character varying(255) DEFAULT ''::character varying NOT NULL + k character varying DEFAULT ''::character varying NOT NULL, + v character varying DEFAULT ''::character varying NOT NULL ); @@ -393,8 +436,8 @@ CREATE TABLE current_way_nodes ( CREATE TABLE current_way_tags ( way_id bigint NOT NULL, - k character varying(255) DEFAULT ''::character varying NOT NULL, - v character varying(255) DEFAULT ''::character varying NOT NULL + k character varying DEFAULT ''::character varying NOT NULL, + v character varying DEFAULT ''::character varying NOT NULL ); @@ -442,7 +485,7 @@ CREATE TABLE diary_comments ( created_at timestamp without time zone NOT NULL, updated_at timestamp without time zone NOT NULL, visible boolean DEFAULT true NOT NULL, - body_format format_enum DEFAULT 'html'::format_enum NOT NULL + body_format format_enum DEFAULT 'markdown'::format_enum NOT NULL ); @@ -472,15 +515,15 @@ ALTER SEQUENCE diary_comments_id_seq OWNED BY diary_comments.id; CREATE TABLE diary_entries ( id bigint NOT NULL, user_id bigint NOT NULL, - title character varying(255) NOT NULL, + title character varying NOT NULL, body text NOT NULL, created_at timestamp without time zone NOT NULL, updated_at timestamp without time zone NOT NULL, latitude double precision, longitude double precision, - language_code character varying(255) DEFAULT 'en'::character varying NOT NULL, + language_code character varying DEFAULT 'en'::character varying NOT NULL, visible boolean DEFAULT true NOT NULL, - body_format format_enum DEFAULT 'html'::format_enum NOT NULL + body_format format_enum DEFAULT 'markdown'::format_enum NOT NULL ); @@ -554,7 +597,7 @@ CREATE TABLE gps_points ( CREATE TABLE gpx_file_tags ( gpx_id bigint DEFAULT 0 NOT NULL, - tag character varying(255) NOT NULL, + tag character varying NOT NULL, id bigint NOT NULL ); @@ -586,12 +629,12 @@ CREATE TABLE gpx_files ( id bigint NOT NULL, user_id bigint NOT NULL, visible boolean DEFAULT true NOT NULL, - name character varying(255) DEFAULT ''::character varying NOT NULL, + name character varying DEFAULT ''::character varying NOT NULL, size bigint, latitude double precision, longitude double precision, "timestamp" timestamp without time zone NOT NULL, - description character varying(255) DEFAULT ''::character varying NOT NULL, + description character varying DEFAULT ''::character varying NOT NULL, inserted boolean NOT NULL, visibility gpx_visibility_enum DEFAULT 'public'::gpx_visibility_enum NOT NULL ); @@ -621,9 +664,9 @@ ALTER SEQUENCE gpx_files_id_seq OWNED BY gpx_files.id; -- CREATE TABLE languages ( - code character varying(255) NOT NULL, - english_name character varying(255) NOT NULL, - native_name character varying(255) + code character varying NOT NULL, + english_name character varying NOT NULL, + native_name character varying ); @@ -634,14 +677,14 @@ CREATE TABLE languages ( CREATE TABLE messages ( id bigint NOT NULL, from_user_id bigint NOT NULL, - title character varying(255) NOT NULL, + title character varying NOT NULL, body text NOT NULL, sent_on timestamp without time zone NOT NULL, message_read boolean DEFAULT false NOT NULL, to_user_id bigint NOT NULL, to_user_visible boolean DEFAULT true NOT NULL, from_user_visible boolean DEFAULT true NOT NULL, - body_format format_enum DEFAULT 'html'::format_enum NOT NULL + body_format format_enum DEFAULT 'markdown'::format_enum NOT NULL ); @@ -671,8 +714,8 @@ ALTER SEQUENCE messages_id_seq OWNED BY messages.id; CREATE TABLE node_tags ( node_id bigint NOT NULL, version bigint NOT NULL, - k character varying(255) DEFAULT ''::character varying NOT NULL, - v character varying(255) DEFAULT ''::character varying NOT NULL + k character varying DEFAULT ''::character varying NOT NULL, + v character varying DEFAULT ''::character varying NOT NULL ); @@ -698,7 +741,7 @@ CREATE TABLE nodes ( -- CREATE TABLE note_comments ( - id integer NOT NULL, + id bigint NOT NULL, note_id bigint NOT NULL, visible boolean NOT NULL, created_at timestamp without time zone NOT NULL, @@ -733,7 +776,7 @@ ALTER SEQUENCE note_comments_id_seq OWNED BY note_comments.id; -- CREATE TABLE notes ( - id integer NOT NULL, + id bigint NOT NULL, latitude integer NOT NULL, longitude integer NOT NULL, tile bigint NOT NULL, @@ -769,7 +812,7 @@ ALTER SEQUENCE notes_id_seq OWNED BY notes.id; CREATE TABLE oauth_nonces ( id integer NOT NULL, - nonce character varying(255), + nonce character varying, "timestamp" integer, created_at timestamp without time zone, updated_at timestamp without time zone @@ -816,9 +859,9 @@ CREATE TABLE oauth_tokens ( allow_write_api boolean DEFAULT false NOT NULL, allow_read_gpx boolean DEFAULT false NOT NULL, allow_write_gpx boolean DEFAULT false NOT NULL, - callback_url character varying(255), + callback_url character varying, verifier character varying(20), - scope character varying(255), + scope character varying, valid_to timestamp without time zone, allow_write_notes boolean DEFAULT false NOT NULL ); @@ -849,10 +892,10 @@ ALTER SEQUENCE oauth_tokens_id_seq OWNED BY oauth_tokens.id; CREATE TABLE redactions ( id integer NOT NULL, - title character varying(255), + title character varying, description text, - created_at timestamp without time zone NOT NULL, - updated_at timestamp without time zone NOT NULL, + created_at timestamp without time zone, + updated_at timestamp without time zone, user_id bigint NOT NULL, description_format format_enum DEFAULT 'markdown'::format_enum NOT NULL ); @@ -885,7 +928,7 @@ CREATE TABLE relation_members ( relation_id bigint DEFAULT 0 NOT NULL, member_type nwr_enum NOT NULL, member_id bigint NOT NULL, - member_role character varying(255) NOT NULL, + member_role character varying NOT NULL, version bigint DEFAULT 0 NOT NULL, sequence_id integer DEFAULT 0 NOT NULL ); @@ -897,8 +940,8 @@ CREATE TABLE relation_members ( CREATE TABLE relation_tags ( relation_id bigint DEFAULT 0 NOT NULL, - k character varying(255) DEFAULT ''::character varying NOT NULL, - v character varying(255) DEFAULT ''::character varying NOT NULL, + k character varying DEFAULT ''::character varying NOT NULL, + v character varying DEFAULT ''::character varying NOT NULL, version bigint NOT NULL ); @@ -922,7 +965,7 @@ CREATE TABLE relations ( -- CREATE TABLE schema_migrations ( - version character varying(255) NOT NULL + version character varying NOT NULL ); @@ -940,7 +983,7 @@ CREATE TABLE user_blocks ( revoker_id bigint, created_at timestamp without time zone, updated_at timestamp without time zone, - reason_format format_enum DEFAULT 'html'::format_enum NOT NULL + reason_format format_enum DEFAULT 'markdown'::format_enum NOT NULL ); @@ -969,8 +1012,8 @@ ALTER SEQUENCE user_blocks_id_seq OWNED BY user_blocks.id; CREATE TABLE user_preferences ( user_id bigint NOT NULL, - k character varying(255) NOT NULL, - v character varying(255) NOT NULL + k character varying NOT NULL, + v character varying NOT NULL ); @@ -981,9 +1024,9 @@ CREATE TABLE user_preferences ( CREATE TABLE user_roles ( id integer NOT NULL, user_id bigint NOT NULL, + role user_role_enum NOT NULL, created_at timestamp without time zone, updated_at timestamp without time zone, - role user_role_enum NOT NULL, granter_id bigint NOT NULL ); @@ -1014,7 +1057,7 @@ ALTER SEQUENCE user_roles_id_seq OWNED BY user_roles.id; CREATE TABLE user_tokens ( id bigint NOT NULL, user_id bigint NOT NULL, - token character varying(255) NOT NULL, + token character varying NOT NULL, expiry timestamp without time zone NOT NULL, referer text ); @@ -1044,36 +1087,37 @@ ALTER SEQUENCE user_tokens_id_seq OWNED BY user_tokens.id; -- CREATE TABLE users ( - email character varying(255) NOT NULL, + email character varying NOT NULL, id bigint NOT NULL, - pass_crypt character varying(255) NOT NULL, + pass_crypt character varying NOT NULL, creation_time timestamp without time zone NOT NULL, - display_name character varying(255) DEFAULT ''::character varying NOT NULL, + display_name character varying DEFAULT ''::character varying NOT NULL, data_public boolean DEFAULT false NOT NULL, description text DEFAULT ''::text NOT NULL, home_lat double precision, home_lon double precision, home_zoom smallint DEFAULT 3, nearby integer DEFAULT 50, - pass_salt character varying(255), + pass_salt character varying, image_file_name text, email_valid boolean DEFAULT false NOT NULL, - new_email character varying(255), - creation_ip character varying(255), - languages character varying(255), + new_email character varying, + creation_ip character varying, + languages character varying, status user_status_enum DEFAULT 'pending'::user_status_enum NOT NULL, terms_agreed timestamp without time zone, consider_pd boolean DEFAULT false NOT NULL, - preferred_editor character varying(255), + auth_uid character varying, + preferred_editor character varying, terms_seen boolean DEFAULT false NOT NULL, - openid_url character varying(255), - description_format format_enum DEFAULT 'html'::format_enum NOT NULL, - image_fingerprint character varying(255), + description_format format_enum DEFAULT 'markdown'::format_enum NOT NULL, + image_fingerprint character varying, changesets_count integer DEFAULT 0 NOT NULL, traces_count integer DEFAULT 0 NOT NULL, diary_entries_count integer DEFAULT 0 NOT NULL, image_use_gravatar boolean DEFAULT true NOT NULL, - image_content_type character varying(255) + image_content_type character varying, + auth_provider character varying ); @@ -1114,8 +1158,8 @@ CREATE TABLE way_nodes ( CREATE TABLE way_tags ( way_id bigint DEFAULT 0 NOT NULL, - k character varying(255) NOT NULL, - v character varying(255) NOT NULL, + k character varying NOT NULL, + v character varying NOT NULL, version bigint NOT NULL ); @@ -1141,6 +1185,13 @@ CREATE TABLE ways ( ALTER TABLE ONLY acls ALTER COLUMN id SET DEFAULT nextval('acls_id_seq'::regclass); +-- +-- Name: id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY changeset_comments ALTER COLUMN id SET DEFAULT nextval('changeset_comments_id_seq'::regclass); + + -- -- Name: id; Type: DEFAULT; Schema: public; Owner: - -- @@ -1289,6 +1340,14 @@ ALTER TABLE ONLY acls ADD CONSTRAINT acls_pkey PRIMARY KEY (id); +-- +-- Name: changeset_comments_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: +-- + +ALTER TABLE ONLY changeset_comments + ADD CONSTRAINT changeset_comments_pkey PRIMARY KEY (id); + + -- -- Name: changesets_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: -- @@ -1737,6 +1796,27 @@ CREATE INDEX gpx_files_user_id_idx ON gpx_files USING btree (user_id); CREATE INDEX gpx_files_visible_visibility_idx ON gpx_files USING btree (visible, visibility); +-- +-- Name: index_changeset_comments_on_created_at; Type: INDEX; Schema: public; Owner: -; Tablespace: +-- + +CREATE INDEX index_changeset_comments_on_created_at ON changeset_comments USING btree (created_at); + + +-- +-- Name: index_changesets_subscribers_on_changeset_id; Type: INDEX; Schema: public; Owner: -; Tablespace: +-- + +CREATE INDEX index_changesets_subscribers_on_changeset_id ON changesets_subscribers USING btree (changeset_id); + + +-- +-- Name: index_changesets_subscribers_on_subscriber_id_and_changeset_id; Type: INDEX; Schema: public; Owner: -; Tablespace: +-- + +CREATE UNIQUE INDEX index_changesets_subscribers_on_subscriber_id_and_changeset_id ON changesets_subscribers USING btree (subscriber_id, changeset_id); + + -- -- Name: index_client_applications_on_key; Type: INDEX; Schema: public; Owner: -; Tablespace: -- @@ -1891,13 +1971,6 @@ CREATE UNIQUE INDEX unique_schema_migrations ON schema_migrations USING btree (v CREATE INDEX user_id_idx ON friends USING btree (friend_user_id); --- --- Name: user_openid_url_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: --- - -CREATE UNIQUE INDEX user_openid_url_idx ON users USING btree (openid_url); - - -- -- Name: user_roles_id_role_unique; Type: INDEX; Schema: public; Owner: -; Tablespace: -- @@ -1919,6 +1992,13 @@ CREATE UNIQUE INDEX user_tokens_token_idx ON user_tokens USING btree (token); CREATE INDEX user_tokens_user_id_idx ON user_tokens USING btree (user_id); +-- +-- Name: users_auth_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: +-- + +CREATE UNIQUE INDEX users_auth_idx ON users USING btree (auth_provider, auth_uid); + + -- -- Name: users_display_name_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: -- @@ -1968,6 +2048,22 @@ CREATE INDEX ways_changeset_id_idx ON ways USING btree (changeset_id); CREATE INDEX ways_timestamp_idx ON ways USING btree ("timestamp"); +-- +-- Name: changeset_comments_author_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY changeset_comments + ADD CONSTRAINT changeset_comments_author_id_fkey FOREIGN KEY (author_id) REFERENCES users(id); + + +-- +-- Name: changeset_comments_changeset_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY changeset_comments + ADD CONSTRAINT changeset_comments_changeset_id_fkey FOREIGN KEY (changeset_id) REFERENCES changesets(id); + + -- -- Name: changeset_tags_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - -- @@ -1976,6 +2072,22 @@ ALTER TABLE ONLY changeset_tags ADD CONSTRAINT changeset_tags_id_fkey FOREIGN KEY (changeset_id) REFERENCES changesets(id); +-- +-- Name: changesets_subscribers_changeset_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY changesets_subscribers + ADD CONSTRAINT changesets_subscribers_changeset_id_fkey FOREIGN KEY (changeset_id) REFERENCES changesets(id); + + +-- +-- Name: changesets_subscribers_subscriber_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY changesets_subscribers + ADD CONSTRAINT changesets_subscribers_subscriber_id_fkey FOREIGN KEY (subscriber_id) REFERENCES users(id); + + -- -- Name: changesets_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - -- @@ -2426,6 +2538,16 @@ INSERT INTO schema_migrations (version) VALUES ('20140117185510'); INSERT INTO schema_migrations (version) VALUES ('20140210003018'); +INSERT INTO schema_migrations (version) VALUES ('20140507110937'); + +INSERT INTO schema_migrations (version) VALUES ('20140519141742'); + +INSERT INTO schema_migrations (version) VALUES ('20150110152606'); + +INSERT INTO schema_migrations (version) VALUES ('20150111192335'); + +INSERT INTO schema_migrations (version) VALUES ('20150222101847'); + INSERT INTO schema_migrations (version) VALUES ('21'); INSERT INTO schema_migrations (version) VALUES ('22'); @@ -2513,3 +2635,4 @@ INSERT INTO schema_migrations (version) VALUES ('7'); INSERT INTO schema_migrations (version) VALUES ('8'); INSERT INTO schema_migrations (version) VALUES ('9'); +