X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/5f33656c8d6725969ac63dbfe038633ad0e4352f..933b0913304fdd581c7cb3f1ec30450d6e04c63a:/db/structure.sql?ds=sidebyside diff --git a/db/structure.sql b/db/structure.sql index eed9b053b..031b89aa5 100644 --- a/db/structure.sql +++ b/db/structure.sql @@ -3,6 +3,7 @@ -- SET statement_timeout = 0; +SET lock_timeout = 0; SET client_encoding = 'UTF8'; SET standard_conforming_strings = on; SET check_function_bodies = false; @@ -61,6 +62,30 @@ CREATE TYPE gpx_visibility_enum AS ENUM ( ); +-- +-- Name: note_event_enum; Type: TYPE; Schema: public; Owner: - +-- + +CREATE TYPE note_event_enum AS ENUM ( + 'opened', + 'closed', + 'reopened', + 'commented', + 'hidden' +); + + +-- +-- Name: note_status_enum; Type: TYPE; Schema: public; Owner: - +-- + +CREATE TYPE note_status_enum AS ENUM ( + 'open', + 'closed', + 'hidden' +); + + -- -- Name: nwr_enum; Type: TYPE; Schema: public; Owner: - -- @@ -225,7 +250,8 @@ CREATE TABLE client_applications ( allow_write_diary boolean DEFAULT false NOT NULL, allow_write_api boolean DEFAULT false NOT NULL, allow_read_gpx boolean DEFAULT false NOT NULL, - allow_write_gpx boolean DEFAULT false NOT NULL + allow_write_gpx boolean DEFAULT false NOT NULL, + allow_write_notes boolean DEFAULT false NOT NULL ); @@ -695,10 +721,81 @@ CREATE TABLE nodes ( visible boolean NOT NULL, "timestamp" timestamp without time zone NOT NULL, tile bigint NOT NULL, - version bigint NOT NULL + version bigint NOT NULL, + redaction_id integer +); + + +-- +-- Name: note_comments; Type: TABLE; Schema: public; Owner: -; Tablespace: +-- + +CREATE TABLE note_comments ( + id integer NOT NULL, + note_id bigint NOT NULL, + visible boolean NOT NULL, + created_at timestamp without time zone NOT NULL, + author_ip inet, + author_id bigint, + body text, + event note_event_enum +); + + +-- +-- Name: note_comments_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE note_comments_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: note_comments_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE note_comments_id_seq OWNED BY note_comments.id; + + +-- +-- Name: notes; Type: TABLE; Schema: public; Owner: -; Tablespace: +-- + +CREATE TABLE notes ( + id integer NOT NULL, + latitude integer NOT NULL, + longitude integer NOT NULL, + tile bigint NOT NULL, + updated_at timestamp without time zone NOT NULL, + created_at timestamp without time zone NOT NULL, + status note_status_enum NOT NULL, + closed_at timestamp without time zone ); +-- +-- Name: notes_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE notes_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: notes_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE notes_id_seq OWNED BY notes.id; + + -- -- Name: oauth_nonces; Type: TABLE; Schema: public; Owner: -; Tablespace: -- @@ -755,7 +852,8 @@ CREATE TABLE oauth_tokens ( callback_url character varying(255), verifier character varying(20), scope character varying(255), - valid_to timestamp without time zone + valid_to timestamp without time zone, + allow_write_notes boolean DEFAULT false NOT NULL ); @@ -778,6 +876,40 @@ CREATE SEQUENCE oauth_tokens_id_seq ALTER SEQUENCE oauth_tokens_id_seq OWNED BY oauth_tokens.id; +-- +-- Name: redactions; Type: TABLE; Schema: public; Owner: -; Tablespace: +-- + +CREATE TABLE redactions ( + id integer NOT NULL, + title character varying(255), + description text, + created_at timestamp without time zone NOT NULL, + updated_at timestamp without time zone NOT NULL, + user_id bigint NOT NULL, + description_format format_enum DEFAULT 'markdown'::format_enum NOT NULL +); + + +-- +-- Name: redactions_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE redactions_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: redactions_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE redactions_id_seq OWNED BY redactions.id; + + -- -- Name: relation_members; Type: TABLE; Schema: public; Owner: -; Tablespace: -- @@ -813,7 +945,8 @@ CREATE TABLE relations ( changeset_id bigint NOT NULL, "timestamp" timestamp without time zone NOT NULL, version bigint NOT NULL, - visible boolean DEFAULT true NOT NULL + visible boolean DEFAULT true NOT NULL, + redaction_id integer ); @@ -826,38 +959,6 @@ CREATE TABLE schema_migrations ( ); --- --- Name: sessions; Type: TABLE; Schema: public; Owner: -; Tablespace: --- - -CREATE TABLE sessions ( - id integer NOT NULL, - session_id character varying(255), - data text, - created_at timestamp without time zone, - updated_at timestamp without time zone -); - - --- --- Name: sessions_id_seq; Type: SEQUENCE; Schema: public; Owner: - --- - -CREATE SEQUENCE sessions_id_seq - START WITH 1 - INCREMENT BY 1 - NO MINVALUE - NO MAXVALUE - CACHE 1; - - --- --- Name: sessions_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - --- - -ALTER SEQUENCE sessions_id_seq OWNED BY sessions.id; - - -- -- Name: user_blocks; Type: TABLE; Schema: public; Owner: -; Tablespace: -- @@ -999,8 +1100,12 @@ CREATE TABLE users ( preferred_editor character varying(255), 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 'html'::format_enum NOT NULL + 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 ); @@ -1056,7 +1161,8 @@ CREATE TABLE ways ( changeset_id bigint NOT NULL, "timestamp" timestamp without time zone NOT NULL, version bigint NOT NULL, - visible boolean DEFAULT true NOT NULL + visible boolean DEFAULT true NOT NULL, + redaction_id integer ); @@ -1151,6 +1257,20 @@ ALTER TABLE ONLY gpx_files ALTER COLUMN id SET DEFAULT nextval('gpx_files_id_seq ALTER TABLE ONLY messages ALTER COLUMN id SET DEFAULT nextval('messages_id_seq'::regclass); +-- +-- Name: id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY note_comments ALTER COLUMN id SET DEFAULT nextval('note_comments_id_seq'::regclass); + + +-- +-- Name: id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY notes ALTER COLUMN id SET DEFAULT nextval('notes_id_seq'::regclass); + + -- -- Name: id; Type: DEFAULT; Schema: public; Owner: - -- @@ -1169,7 +1289,7 @@ ALTER TABLE ONLY oauth_tokens ALTER COLUMN id SET DEFAULT nextval('oauth_tokens_ -- Name: id; Type: DEFAULT; Schema: public; Owner: - -- -ALTER TABLE ONLY sessions ALTER COLUMN id SET DEFAULT nextval('sessions_id_seq'::regclass); +ALTER TABLE ONLY redactions ALTER COLUMN id SET DEFAULT nextval('redactions_id_seq'::regclass); -- @@ -1368,6 +1488,22 @@ ALTER TABLE ONLY nodes ADD CONSTRAINT nodes_pkey PRIMARY KEY (node_id, version); +-- +-- Name: note_comments_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: +-- + +ALTER TABLE ONLY note_comments + ADD CONSTRAINT note_comments_pkey PRIMARY KEY (id); + + +-- +-- Name: notes_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: +-- + +ALTER TABLE ONLY notes + ADD CONSTRAINT notes_pkey PRIMARY KEY (id); + + -- -- Name: oauth_nonces_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: -- @@ -1384,6 +1520,14 @@ ALTER TABLE ONLY oauth_tokens ADD CONSTRAINT oauth_tokens_pkey PRIMARY KEY (id); +-- +-- Name: redactions_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: +-- + +ALTER TABLE ONLY redactions + ADD CONSTRAINT redactions_pkey PRIMARY KEY (id); + + -- -- Name: relation_members_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: -- @@ -1408,14 +1552,6 @@ ALTER TABLE ONLY relations ADD CONSTRAINT relations_pkey PRIMARY KEY (relation_id, version); --- --- Name: sessions_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: --- - -ALTER TABLE ONLY sessions - ADD CONSTRAINT sessions_pkey PRIMARY KEY (id); - - -- -- Name: user_blocks_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: -- @@ -1662,6 +1798,20 @@ CREATE INDEX gpx_files_visible_visibility_idx ON gpx_files USING btree (visible, CREATE UNIQUE INDEX index_client_applications_on_key ON client_applications USING btree (key); +-- +-- Name: index_note_comments_on_body; Type: INDEX; Schema: public; Owner: -; Tablespace: +-- + +CREATE INDEX index_note_comments_on_body ON note_comments USING gin (to_tsvector('english'::regconfig, body)); + + +-- +-- Name: index_note_comments_on_created_at; Type: INDEX; Schema: public; Owner: -; Tablespace: +-- + +CREATE INDEX index_note_comments_on_created_at ON note_comments USING btree (created_at); + + -- -- Name: index_oauth_nonces_on_nonce_and_timestamp; Type: INDEX; Schema: public; Owner: -; Tablespace: -- @@ -1718,6 +1868,34 @@ CREATE INDEX nodes_tile_idx ON nodes USING btree (tile); CREATE INDEX nodes_timestamp_idx ON nodes USING btree ("timestamp"); +-- +-- Name: note_comments_note_id_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: +-- + +CREATE INDEX note_comments_note_id_idx ON note_comments USING btree (note_id); + + +-- +-- Name: notes_created_at_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: +-- + +CREATE INDEX notes_created_at_idx ON notes USING btree (created_at); + + +-- +-- Name: notes_tile_status_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: +-- + +CREATE INDEX notes_tile_status_idx ON notes USING btree (tile, status); + + +-- +-- Name: notes_updated_at_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: +-- + +CREATE INDEX notes_updated_at_idx ON notes USING btree (updated_at); + + -- -- Name: points_gpxid_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: -- @@ -1753,13 +1931,6 @@ CREATE INDEX relations_changeset_id_idx ON relations USING btree (changeset_id); CREATE INDEX relations_timestamp_idx ON relations USING btree ("timestamp"); --- --- Name: sessions_session_id_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: --- - -CREATE UNIQUE INDEX sessions_session_id_idx ON sessions USING btree (session_id); - - -- -- Name: unique_schema_migrations; Type: INDEX; Schema: public; Owner: -; Tablespace: -- @@ -2051,6 +2222,30 @@ ALTER TABLE ONLY nodes ADD CONSTRAINT nodes_changeset_id_fkey FOREIGN KEY (changeset_id) REFERENCES changesets(id); +-- +-- Name: nodes_redaction_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY nodes + ADD CONSTRAINT nodes_redaction_id_fkey FOREIGN KEY (redaction_id) REFERENCES redactions(id); + + +-- +-- Name: note_comments_author_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY note_comments + ADD CONSTRAINT note_comments_author_id_fkey FOREIGN KEY (author_id) REFERENCES users(id); + + +-- +-- Name: note_comments_note_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY note_comments + ADD CONSTRAINT note_comments_note_id_fkey FOREIGN KEY (note_id) REFERENCES notes(id); + + -- -- Name: oauth_tokens_client_application_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - -- @@ -2067,6 +2262,14 @@ ALTER TABLE ONLY oauth_tokens ADD CONSTRAINT oauth_tokens_user_id_fkey FOREIGN KEY (user_id) REFERENCES users(id); +-- +-- Name: redactions_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY redactions + ADD CONSTRAINT redactions_user_id_fkey FOREIGN KEY (user_id) REFERENCES users(id); + + -- -- Name: relation_members_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - -- @@ -2091,6 +2294,14 @@ ALTER TABLE ONLY relations ADD CONSTRAINT relations_changeset_id_fkey FOREIGN KEY (changeset_id) REFERENCES changesets(id); +-- +-- Name: relations_redaction_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY relations + ADD CONSTRAINT relations_redaction_id_fkey FOREIGN KEY (redaction_id) REFERENCES redactions(id); + + -- -- Name: user_blocks_moderator_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - -- @@ -2171,10 +2382,20 @@ ALTER TABLE ONLY ways ADD CONSTRAINT ways_changeset_id_fkey FOREIGN KEY (changeset_id) REFERENCES changesets(id); +-- +-- Name: ways_redaction_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY ways + ADD CONSTRAINT ways_redaction_id_fkey FOREIGN KEY (redaction_id) REFERENCES redactions(id); + + -- -- PostgreSQL database dump complete -- +SET search_path TO "$user",public; + INSERT INTO schema_migrations (version) VALUES ('1'); INSERT INTO schema_migrations (version) VALUES ('10'); @@ -2211,6 +2432,10 @@ INSERT INTO schema_migrations (version) VALUES ('20101114011429'); INSERT INTO schema_migrations (version) VALUES ('20110322001319'); +INSERT INTO schema_migrations (version) VALUES ('20110508145337'); + +INSERT INTO schema_migrations (version) VALUES ('20110521142405'); + INSERT INTO schema_migrations (version) VALUES ('20110925112722'); INSERT INTO schema_migrations (version) VALUES ('20111116184519'); @@ -2227,6 +2452,30 @@ INSERT INTO schema_migrations (version) VALUES ('20120214210114'); INSERT INTO schema_migrations (version) VALUES ('20120219161649'); +INSERT INTO schema_migrations (version) VALUES ('20120318201948'); + +INSERT INTO schema_migrations (version) VALUES ('20120328090602'); + +INSERT INTO schema_migrations (version) VALUES ('20120404205604'); + +INSERT INTO schema_migrations (version) VALUES ('20120808231205'); + +INSERT INTO schema_migrations (version) VALUES ('20121005195010'); + +INSERT INTO schema_migrations (version) VALUES ('20121012044047'); + +INSERT INTO schema_migrations (version) VALUES ('20121119165817'); + +INSERT INTO schema_migrations (version) VALUES ('20121202155309'); + +INSERT INTO schema_migrations (version) VALUES ('20121203124841'); + +INSERT INTO schema_migrations (version) VALUES ('20130328184137'); + +INSERT INTO schema_migrations (version) VALUES ('20131212124700'); + +INSERT INTO schema_migrations (version) VALUES ('20140115192822'); + INSERT INTO schema_migrations (version) VALUES ('21'); INSERT INTO schema_migrations (version) VALUES ('22'); @@ -2297,10 +2546,20 @@ INSERT INTO schema_migrations (version) VALUES ('51'); INSERT INTO schema_migrations (version) VALUES ('52'); +INSERT INTO schema_migrations (version) VALUES ('53'); + +INSERT INTO schema_migrations (version) VALUES ('54'); + +INSERT INTO schema_migrations (version) VALUES ('55'); + +INSERT INTO schema_migrations (version) VALUES ('56'); + +INSERT INTO schema_migrations (version) VALUES ('57'); + INSERT INTO schema_migrations (version) VALUES ('6'); INSERT INTO schema_migrations (version) VALUES ('7'); INSERT INTO schema_migrations (version) VALUES ('8'); -INSERT INTO schema_migrations (version) VALUES ('9'); \ No newline at end of file +INSERT INTO schema_migrations (version) VALUES ('9');