X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/06a98ad983dd27e1487e4d5a64bc9e28f538c42b..d4dadf1fe2e1930d4d9e0eba72ac15b7be572405:/db/structure.sql diff --git a/db/structure.sql b/db/structure.sql index 14fa58685..e50e50278 100644 --- a/db/structure.sql +++ b/db/structure.sql @@ -115,31 +115,6 @@ CREATE TYPE public.user_status_enum AS ENUM ( ); --- --- Name: maptile_for_point(bigint, bigint, integer); Type: FUNCTION; Schema: public; Owner: - --- - -CREATE FUNCTION public.maptile_for_point(scaled_lat bigint, scaled_lon bigint, zoom integer) RETURNS integer - LANGUAGE plpgsql IMMUTABLE - AS $$ -DECLARE - lat CONSTANT DOUBLE PRECISION := scaled_lat / 10000000.0; - lon CONSTANT DOUBLE PRECISION := scaled_lon / 10000000.0; - zscale CONSTANT DOUBLE PRECISION := 2.0 ^ zoom; - pi CONSTANT DOUBLE PRECISION := 3.141592653589793; - r_per_d CONSTANT DOUBLE PRECISION := pi / 180.0; - x int4; - y int4; -BEGIN - -- straight port of the C code. see db/functions/maptile.c - x := floor((lon + 180.0) * zscale / 360.0); - y := floor((1.0 - ln(tan(lat * r_per_d) + 1.0 / cos(lat * r_per_d)) / pi) * zscale / 2.0); - - RETURN (x << zoom) | y; -END; -$$; - - -- -- Name: tile_for_point(integer, integer); Type: FUNCTION; Schema: public; Owner: - -- @@ -172,30 +147,6 @@ END; $$; --- --- Name: xid_to_int4(xid); Type: FUNCTION; Schema: public; Owner: - --- - -CREATE FUNCTION public.xid_to_int4(t xid) RETURNS integer - LANGUAGE plpgsql IMMUTABLE STRICT - AS $$ -DECLARE - tl bigint; - ti int; -BEGIN - tl := t; - - IF tl >= 2147483648 THEN - tl := tl - 4294967296; - END IF; - - ti := tl; - - RETURN ti; -END; -$$; - - SET default_tablespace = ''; SET default_table_access_method = heap; @@ -278,7 +229,8 @@ CREATE TABLE public.active_storage_blobs ( metadata text, byte_size bigint NOT NULL, checksum character varying NOT NULL, - created_at timestamp without time zone NOT NULL + created_at timestamp without time zone NOT NULL, + service_name character varying NOT NULL ); @@ -301,6 +253,36 @@ CREATE SEQUENCE public.active_storage_blobs_id_seq ALTER SEQUENCE public.active_storage_blobs_id_seq OWNED BY public.active_storage_blobs.id; +-- +-- Name: active_storage_variant_records; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.active_storage_variant_records ( + id bigint NOT NULL, + blob_id bigint NOT NULL, + variation_digest character varying NOT NULL +); + + +-- +-- Name: active_storage_variant_records_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.active_storage_variant_records_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: active_storage_variant_records_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.active_storage_variant_records_id_seq OWNED BY public.active_storage_variant_records.id; + + -- -- Name: ar_internal_metadata; Type: TABLE; Schema: public; Owner: - -- @@ -308,8 +290,8 @@ ALTER SEQUENCE public.active_storage_blobs_id_seq OWNED BY public.active_storage CREATE TABLE public.ar_internal_metadata ( key character varying NOT NULL, value character varying, - created_at timestamp without time zone NOT NULL, - updated_at timestamp without time zone NOT NULL + created_at timestamp(6) without time zone NOT NULL, + updated_at timestamp(6) without time zone NOT NULL ); @@ -332,6 +314,7 @@ CREATE TABLE public.changeset_comments ( -- CREATE SEQUENCE public.changeset_comments_id_seq + AS integer START WITH 1 INCREMENT BY 1 NO MINVALUE @@ -433,6 +416,7 @@ CREATE TABLE public.client_applications ( -- CREATE SEQUENCE public.client_applications_id_seq + AS integer START WITH 1 INCREMENT BY 1 NO MINVALUE @@ -732,7 +716,8 @@ CREATE TABLE public.diary_entry_subscriptions ( CREATE TABLE public.friends ( id bigint NOT NULL, user_id bigint NOT NULL, - friend_user_id bigint NOT NULL + friend_user_id bigint NOT NULL, + created_at timestamp without time zone ); @@ -857,6 +842,7 @@ CREATE TABLE public.issue_comments ( -- CREATE SEQUENCE public.issue_comments_id_seq + AS integer START WITH 1 INCREMENT BY 1 NO MINVALUE @@ -896,6 +882,7 @@ CREATE TABLE public.issues ( -- CREATE SEQUENCE public.issues_id_seq + AS integer START WITH 1 INCREMENT BY 1 NO MINVALUE @@ -1008,6 +995,7 @@ CREATE TABLE public.note_comments ( -- CREATE SEQUENCE public.note_comments_id_seq + AS integer START WITH 1 INCREMENT BY 1 NO MINVALUE @@ -1043,6 +1031,7 @@ CREATE TABLE public.notes ( -- CREATE SEQUENCE public.notes_id_seq + AS integer START WITH 1 INCREMENT BY 1 NO MINVALUE @@ -1057,12 +1046,125 @@ CREATE SEQUENCE public.notes_id_seq ALTER SEQUENCE public.notes_id_seq OWNED BY public.notes.id; +-- +-- Name: oauth_access_grants; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.oauth_access_grants ( + id bigint NOT NULL, + resource_owner_id bigint NOT NULL, + application_id bigint NOT NULL, + token character varying NOT NULL, + expires_in integer NOT NULL, + redirect_uri text NOT NULL, + created_at timestamp without time zone NOT NULL, + revoked_at timestamp without time zone, + scopes character varying DEFAULT ''::character varying NOT NULL, + code_challenge character varying, + code_challenge_method character varying +); + + +-- +-- Name: oauth_access_grants_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.oauth_access_grants_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: oauth_access_grants_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.oauth_access_grants_id_seq OWNED BY public.oauth_access_grants.id; + + +-- +-- Name: oauth_access_tokens; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.oauth_access_tokens ( + id bigint NOT NULL, + resource_owner_id bigint, + application_id bigint NOT NULL, + token character varying NOT NULL, + refresh_token character varying, + expires_in integer, + revoked_at timestamp without time zone, + created_at timestamp without time zone NOT NULL, + scopes character varying, + previous_refresh_token character varying DEFAULT ''::character varying NOT NULL +); + + +-- +-- Name: oauth_access_tokens_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.oauth_access_tokens_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: oauth_access_tokens_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.oauth_access_tokens_id_seq OWNED BY public.oauth_access_tokens.id; + + +-- +-- Name: oauth_applications; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.oauth_applications ( + id bigint NOT NULL, + owner_type character varying NOT NULL, + owner_id bigint NOT NULL, + name character varying NOT NULL, + uid character varying NOT NULL, + secret character varying NOT NULL, + redirect_uri text NOT NULL, + scopes character varying DEFAULT ''::character varying NOT NULL, + confidential boolean DEFAULT true NOT NULL, + created_at timestamp(6) without time zone NOT NULL, + updated_at timestamp(6) without time zone NOT NULL +); + + +-- +-- Name: oauth_applications_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.oauth_applications_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: oauth_applications_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.oauth_applications_id_seq OWNED BY public.oauth_applications.id; + + -- -- Name: oauth_nonces; Type: TABLE; Schema: public; Owner: - -- CREATE TABLE public.oauth_nonces ( - id integer NOT NULL, + id bigint NOT NULL, nonce character varying, "timestamp" integer, created_at timestamp without time zone, @@ -1075,6 +1177,7 @@ CREATE TABLE public.oauth_nonces ( -- CREATE SEQUENCE public.oauth_nonces_id_seq + AS integer START WITH 1 INCREMENT BY 1 NO MINVALUE @@ -1123,6 +1226,7 @@ CREATE TABLE public.oauth_tokens ( -- CREATE SEQUENCE public.oauth_tokens_id_seq + AS integer START WITH 1 INCREMENT BY 1 NO MINVALUE @@ -1157,6 +1261,7 @@ CREATE TABLE public.redactions ( -- CREATE SEQUENCE public.redactions_id_seq + AS integer START WITH 1 INCREMENT BY 1 NO MINVALUE @@ -1231,6 +1336,7 @@ CREATE TABLE public.reports ( -- CREATE SEQUENCE public.reports_id_seq + AS integer START WITH 1 INCREMENT BY 1 NO MINVALUE @@ -1277,6 +1383,7 @@ CREATE TABLE public.user_blocks ( -- CREATE SEQUENCE public.user_blocks_id_seq + AS integer START WITH 1 INCREMENT BY 1 NO MINVALUE @@ -1309,9 +1416,9 @@ CREATE TABLE public.user_preferences ( CREATE TABLE public.user_roles ( id integer NOT NULL, user_id bigint NOT NULL, + role public.user_role_enum NOT NULL, created_at timestamp without time zone, updated_at timestamp without time zone, - role public.user_role_enum NOT NULL, granter_id bigint NOT NULL ); @@ -1321,6 +1428,7 @@ CREATE TABLE public.user_roles ( -- CREATE SEQUENCE public.user_roles_id_seq + AS integer START WITH 1 INCREMENT BY 1 NO MINVALUE @@ -1482,6 +1590,13 @@ ALTER TABLE ONLY public.active_storage_attachments ALTER COLUMN id SET DEFAULT n ALTER TABLE ONLY public.active_storage_blobs ALTER COLUMN id SET DEFAULT nextval('public.active_storage_blobs_id_seq'::regclass); +-- +-- Name: active_storage_variant_records id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.active_storage_variant_records ALTER COLUMN id SET DEFAULT nextval('public.active_storage_variant_records_id_seq'::regclass); + + -- -- Name: changeset_comments id; Type: DEFAULT; Schema: public; Owner: - -- @@ -1601,6 +1716,27 @@ ALTER TABLE ONLY public.note_comments ALTER COLUMN id SET DEFAULT nextval('publi ALTER TABLE ONLY public.notes ALTER COLUMN id SET DEFAULT nextval('public.notes_id_seq'::regclass); +-- +-- Name: oauth_access_grants id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.oauth_access_grants ALTER COLUMN id SET DEFAULT nextval('public.oauth_access_grants_id_seq'::regclass); + + +-- +-- Name: oauth_access_tokens id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.oauth_access_tokens ALTER COLUMN id SET DEFAULT nextval('public.oauth_access_tokens_id_seq'::regclass); + + +-- +-- Name: oauth_applications id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.oauth_applications ALTER COLUMN id SET DEFAULT nextval('public.oauth_applications_id_seq'::regclass); + + -- -- Name: oauth_nonces id; Type: DEFAULT; Schema: public; Owner: - -- @@ -1681,6 +1817,14 @@ ALTER TABLE ONLY public.active_storage_blobs ADD CONSTRAINT active_storage_blobs_pkey PRIMARY KEY (id); +-- +-- Name: active_storage_variant_records active_storage_variant_records_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.active_storage_variant_records + ADD CONSTRAINT active_storage_variant_records_pkey PRIMARY KEY (id); + + -- -- Name: ar_internal_metadata ar_internal_metadata_pkey; Type: CONSTRAINT; Schema: public; Owner: - -- @@ -1897,6 +2041,30 @@ ALTER TABLE ONLY public.notes ADD CONSTRAINT notes_pkey PRIMARY KEY (id); +-- +-- Name: oauth_access_grants oauth_access_grants_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.oauth_access_grants + ADD CONSTRAINT oauth_access_grants_pkey PRIMARY KEY (id); + + +-- +-- Name: oauth_access_tokens oauth_access_tokens_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.oauth_access_tokens + ADD CONSTRAINT oauth_access_tokens_pkey PRIMARY KEY (id); + + +-- +-- Name: oauth_applications oauth_applications_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.oauth_applications + ADD CONSTRAINT oauth_applications_pkey PRIMARY KEY (id); + + -- -- Name: oauth_nonces oauth_nonces_pkey; Type: CONSTRAINT; Schema: public; Owner: - -- @@ -2158,13 +2326,6 @@ CREATE INDEX diary_entry_language_code_created_at_index ON public.diary_entries CREATE INDEX diary_entry_user_id_created_at_index ON public.diary_entries USING btree (user_id, created_at); --- --- Name: friends_user_id_idx; Type: INDEX; Schema: public; Owner: - --- - -CREATE INDEX friends_user_id_idx ON public.friends USING btree (user_id); - - -- -- Name: gpx_file_tags_gpxid_idx; Type: INDEX; Schema: public; Owner: - -- @@ -2242,6 +2403,13 @@ CREATE UNIQUE INDEX index_active_storage_attachments_uniqueness ON public.active CREATE UNIQUE INDEX index_active_storage_blobs_on_key ON public.active_storage_blobs USING btree (key); +-- +-- Name: index_active_storage_variant_records_uniqueness; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX index_active_storage_variant_records_uniqueness ON public.active_storage_variant_records USING btree (blob_id, variation_digest); + + -- -- Name: index_changeset_comments_on_changeset_id_and_created_at; Type: INDEX; Schema: public; Owner: - -- @@ -2291,6 +2459,13 @@ CREATE INDEX index_client_applications_on_user_id ON public.client_applications CREATE INDEX index_diary_entry_subscriptions_on_diary_entry_id ON public.diary_entry_subscriptions USING btree (diary_entry_id); +-- +-- Name: index_friends_on_user_id_and_created_at; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_friends_on_user_id_and_created_at ON public.friends USING btree (user_id, created_at); + + -- -- Name: index_issue_comments_on_issue_id; Type: INDEX; Schema: public; Owner: - -- @@ -2354,6 +2529,69 @@ CREATE INDEX index_note_comments_on_body ON public.note_comments USING gin (to_t CREATE INDEX index_note_comments_on_created_at ON public.note_comments USING btree (created_at); +-- +-- Name: index_oauth_access_grants_on_application_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_oauth_access_grants_on_application_id ON public.oauth_access_grants USING btree (application_id); + + +-- +-- Name: index_oauth_access_grants_on_resource_owner_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_oauth_access_grants_on_resource_owner_id ON public.oauth_access_grants USING btree (resource_owner_id); + + +-- +-- Name: index_oauth_access_grants_on_token; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX index_oauth_access_grants_on_token ON public.oauth_access_grants USING btree (token); + + +-- +-- Name: index_oauth_access_tokens_on_application_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_oauth_access_tokens_on_application_id ON public.oauth_access_tokens USING btree (application_id); + + +-- +-- Name: index_oauth_access_tokens_on_refresh_token; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX index_oauth_access_tokens_on_refresh_token ON public.oauth_access_tokens USING btree (refresh_token); + + +-- +-- Name: index_oauth_access_tokens_on_resource_owner_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_oauth_access_tokens_on_resource_owner_id ON public.oauth_access_tokens USING btree (resource_owner_id); + + +-- +-- Name: index_oauth_access_tokens_on_token; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX index_oauth_access_tokens_on_token ON public.oauth_access_tokens USING btree (token); + + +-- +-- Name: index_oauth_applications_on_owner_type_and_owner_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_oauth_applications_on_owner_type_and_owner_id ON public.oauth_applications USING btree (owner_type, owner_id); + + +-- +-- Name: index_oauth_applications_on_uid; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX index_oauth_applications_on_uid ON public.oauth_applications USING btree (uid); + + -- -- Name: index_oauth_nonces_on_nonce_and_timestamp; Type: INDEX; Schema: public; Owner: - -- @@ -2761,6 +2999,38 @@ ALTER TABLE ONLY public.diary_entry_subscriptions ADD CONSTRAINT diary_entry_subscriptions_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id); +-- +-- Name: oauth_access_grants fk_rails_330c32d8d9; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.oauth_access_grants + ADD CONSTRAINT fk_rails_330c32d8d9 FOREIGN KEY (resource_owner_id) REFERENCES public.users(id) NOT VALID; + + +-- +-- Name: oauth_access_tokens fk_rails_732cb83ab7; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.oauth_access_tokens + ADD CONSTRAINT fk_rails_732cb83ab7 FOREIGN KEY (application_id) REFERENCES public.oauth_applications(id) NOT VALID; + + +-- +-- Name: active_storage_variant_records fk_rails_993965df05; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.active_storage_variant_records + ADD CONSTRAINT fk_rails_993965df05 FOREIGN KEY (blob_id) REFERENCES public.active_storage_blobs(id); + + +-- +-- Name: oauth_access_grants fk_rails_b4b53e07b8; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.oauth_access_grants + ADD CONSTRAINT fk_rails_b4b53e07b8 FOREIGN KEY (application_id) REFERENCES public.oauth_applications(id) NOT VALID; + + -- -- Name: active_storage_attachments fk_rails_c3b3935057; Type: FK CONSTRAINT; Schema: public; Owner: - -- @@ -2769,6 +3039,22 @@ ALTER TABLE ONLY public.active_storage_attachments ADD CONSTRAINT fk_rails_c3b3935057 FOREIGN KEY (blob_id) REFERENCES public.active_storage_blobs(id); +-- +-- Name: oauth_applications fk_rails_cc886e315a; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.oauth_applications + ADD CONSTRAINT fk_rails_cc886e315a FOREIGN KEY (owner_id) REFERENCES public.users(id) NOT VALID; + + +-- +-- Name: oauth_access_tokens fk_rails_ee63f25419; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.oauth_access_tokens + ADD CONSTRAINT fk_rails_ee63f25419 FOREIGN KEY (resource_owner_id) REFERENCES public.users(id) NOT VALID; + + -- -- Name: friends friends_friend_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - -- @@ -3132,8 +3418,13 @@ INSERT INTO "schema_migrations" (version) VALUES ('20190702193519'), ('20190716173946'), ('20191120140058'), +('20201004105659'), ('20201006213836'), ('20201006220807'), +('20201214144017'), +('20210510083027'), +('20210510083028'), +('20210511104518'), ('21'), ('22'), ('23'),