1 SET statement_timeout = 0;
3 SET idle_in_transaction_session_timeout = 0;
4 SET client_encoding = 'UTF8';
5 SET standard_conforming_strings = on;
6 SELECT pg_catalog.set_config('search_path', '', false);
7 SET check_function_bodies = false;
8 SET xmloption = content;
9 SET client_min_messages = warning;
10 SET row_security = off;
13 -- Name: btree_gist; Type: EXTENSION; Schema: -; Owner: -
16 CREATE EXTENSION IF NOT EXISTS btree_gist WITH SCHEMA public;
20 -- Name: EXTENSION btree_gist; Type: COMMENT; Schema: -; Owner: -
23 COMMENT ON EXTENSION btree_gist IS 'support for indexing common datatypes in GiST';
27 -- Name: format_enum; Type: TYPE; Schema: public; Owner: -
30 CREATE TYPE public.format_enum AS ENUM (
38 -- Name: gpx_visibility_enum; Type: TYPE; Schema: public; Owner: -
41 CREATE TYPE public.gpx_visibility_enum AS ENUM (
50 -- Name: issue_status_enum; Type: TYPE; Schema: public; Owner: -
53 CREATE TYPE public.issue_status_enum AS ENUM (
61 -- Name: note_event_enum; Type: TYPE; Schema: public; Owner: -
64 CREATE TYPE public.note_event_enum AS ENUM (
74 -- Name: note_status_enum; Type: TYPE; Schema: public; Owner: -
77 CREATE TYPE public.note_status_enum AS ENUM (
85 -- Name: nwr_enum; Type: TYPE; Schema: public; Owner: -
88 CREATE TYPE public.nwr_enum AS ENUM (
96 -- Name: user_role_enum; Type: TYPE; Schema: public; Owner: -
99 CREATE TYPE public.user_role_enum AS ENUM (
107 -- Name: user_status_enum; Type: TYPE; Schema: public; Owner: -
110 CREATE TYPE public.user_status_enum AS ENUM (
120 -- Name: api_rate_limit(bigint); Type: FUNCTION; Schema: public; Owner: -
123 CREATE FUNCTION public.api_rate_limit(user_id bigint) RETURNS integer
124 LANGUAGE plpgsql STABLE
127 min_changes_per_hour int4 := 100;
128 initial_changes_per_hour int4 := 1000;
129 max_changes_per_hour int4 := 100000;
130 days_to_max_changes int4 := 7;
131 importer_changes_per_hour int4 := 1000000;
132 moderator_changes_per_hour int4 := 1000000;
134 last_block timestamp without time zone;
135 first_change timestamp without time zone;
137 time_since_first_change double precision;
138 max_changes double precision;
141 SELECT ARRAY_AGG(user_roles.role) INTO STRICT roles FROM user_roles WHERE user_roles.user_id = api_rate_limit.user_id;
143 IF 'moderator' = ANY(roles) THEN
144 max_changes := moderator_changes_per_hour;
145 ELSIF 'importer' = ANY(roles) THEN
146 max_changes := importer_changes_per_hour;
148 SELECT user_blocks.created_at INTO last_block FROM user_blocks WHERE user_blocks.user_id = api_rate_limit.user_id ORDER BY user_blocks.created_at DESC LIMIT 1;
151 SELECT changesets.created_at INTO first_change FROM changesets WHERE changesets.user_id = api_rate_limit.user_id AND changesets.created_at > last_block ORDER BY changesets.created_at LIMIT 1;
153 SELECT changesets.created_at INTO first_change FROM changesets WHERE changesets.user_id = api_rate_limit.user_id ORDER BY changesets.created_at LIMIT 1;
157 first_change := CURRENT_TIMESTAMP AT TIME ZONE 'UTC';
160 SELECT COUNT(*) INTO STRICT active_reports
161 FROM issues INNER JOIN reports ON reports.issue_id = issues.id
162 WHERE issues.reported_user_id = api_rate_limit.user_id AND issues.status = 'open' AND reports.updated_at >= COALESCE(issues.resolved_at, '1970-01-01');
164 time_since_first_change := EXTRACT(EPOCH FROM CURRENT_TIMESTAMP AT TIME ZONE 'UTC' - first_change);
166 max_changes := max_changes_per_hour * POWER(time_since_first_change, 2) / POWER(days_to_max_changes * 24 * 60 * 60, 2);
167 max_changes := GREATEST(initial_changes_per_hour, LEAST(max_changes_per_hour, FLOOR(max_changes)));
168 max_changes := max_changes / POWER(2, active_reports);
169 max_changes := GREATEST(min_changes_per_hour, LEAST(max_changes_per_hour, max_changes));
172 SELECT COALESCE(SUM(changesets.num_changes), 0) INTO STRICT recent_changes FROM changesets WHERE changesets.user_id = api_rate_limit.user_id AND changesets.created_at >= CURRENT_TIMESTAMP AT TIME ZONE 'UTC' - '1 hour'::interval;
174 RETURN max_changes - recent_changes;
180 -- Name: api_size_limit(bigint); Type: FUNCTION; Schema: public; Owner: -
183 CREATE FUNCTION public.api_size_limit(user_id bigint) RETURNS bigint
184 LANGUAGE plpgsql STABLE
187 min_size_limit int8 := 10000000;
188 initial_size_limit int8 := 30000000;
189 max_size_limit int8 := 5400000000;
190 days_to_max_size_limit int4 := 28;
191 importer_size_limit int8 := 5400000000;
192 moderator_size_limit int8 := 5400000000;
194 last_block timestamp without time zone;
195 first_change timestamp without time zone;
197 time_since_first_change double precision;
200 SELECT ARRAY_AGG(user_roles.role) INTO STRICT roles FROM user_roles WHERE user_roles.user_id = api_size_limit.user_id;
202 IF 'moderator' = ANY(roles) THEN
203 size_limit := moderator_size_limit;
204 ELSIF 'importer' = ANY(roles) THEN
205 size_limit := importer_size_limit;
207 SELECT user_blocks.created_at INTO last_block FROM user_blocks WHERE user_blocks.user_id = api_size_limit.user_id ORDER BY user_blocks.created_at DESC LIMIT 1;
210 SELECT changesets.created_at INTO first_change FROM changesets WHERE changesets.user_id = api_size_limit.user_id AND changesets.created_at > last_block ORDER BY changesets.created_at LIMIT 1;
212 SELECT changesets.created_at INTO first_change FROM changesets WHERE changesets.user_id = api_size_limit.user_id ORDER BY changesets.created_at LIMIT 1;
216 first_change := CURRENT_TIMESTAMP AT TIME ZONE 'UTC';
219 SELECT COUNT(*) INTO STRICT active_reports
220 FROM issues INNER JOIN reports ON reports.issue_id = issues.id
221 WHERE issues.reported_user_id = api_size_limit.user_id AND issues.status = 'open' AND reports.updated_at >= COALESCE(issues.resolved_at, '1970-01-01');
223 time_since_first_change := EXTRACT(EPOCH FROM CURRENT_TIMESTAMP AT TIME ZONE 'UTC' - first_change);
225 size_limit := max_size_limit * POWER(time_since_first_change, 2) / POWER(days_to_max_size_limit * 24 * 60 * 60, 2);
226 size_limit := GREATEST(initial_size_limit, LEAST(max_size_limit, FLOOR(size_limit)));
227 size_limit := size_limit / POWER(2, active_reports);
228 size_limit := GREATEST(min_size_limit, LEAST(max_size_limit, size_limit));
236 SET default_tablespace = '';
238 SET default_table_access_method = heap;
241 -- Name: acls; Type: TABLE; Schema: public; Owner: -
244 CREATE TABLE public.acls (
247 k character varying NOT NULL,
249 domain character varying,
255 -- Name: acls_id_seq; Type: SEQUENCE; Schema: public; Owner: -
258 CREATE SEQUENCE public.acls_id_seq
267 -- Name: acls_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
270 ALTER SEQUENCE public.acls_id_seq OWNED BY public.acls.id;
274 -- Name: active_storage_attachments; Type: TABLE; Schema: public; Owner: -
277 CREATE TABLE public.active_storage_attachments (
279 name character varying NOT NULL,
280 record_type character varying NOT NULL,
281 record_id bigint NOT NULL,
282 blob_id bigint NOT NULL,
283 created_at timestamp without time zone NOT NULL
288 -- Name: active_storage_attachments_id_seq; Type: SEQUENCE; Schema: public; Owner: -
291 CREATE SEQUENCE public.active_storage_attachments_id_seq
300 -- Name: active_storage_attachments_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
303 ALTER SEQUENCE public.active_storage_attachments_id_seq OWNED BY public.active_storage_attachments.id;
307 -- Name: active_storage_blobs; Type: TABLE; Schema: public; Owner: -
310 CREATE TABLE public.active_storage_blobs (
312 key character varying NOT NULL,
313 filename character varying NOT NULL,
314 content_type character varying,
316 byte_size bigint NOT NULL,
317 checksum character varying,
318 created_at timestamp without time zone NOT NULL,
319 service_name character varying NOT NULL
324 -- Name: active_storage_blobs_id_seq; Type: SEQUENCE; Schema: public; Owner: -
327 CREATE SEQUENCE public.active_storage_blobs_id_seq
336 -- Name: active_storage_blobs_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
339 ALTER SEQUENCE public.active_storage_blobs_id_seq OWNED BY public.active_storage_blobs.id;
343 -- Name: active_storage_variant_records; Type: TABLE; Schema: public; Owner: -
346 CREATE TABLE public.active_storage_variant_records (
348 blob_id bigint NOT NULL,
349 variation_digest character varying NOT NULL
354 -- Name: active_storage_variant_records_id_seq; Type: SEQUENCE; Schema: public; Owner: -
357 CREATE SEQUENCE public.active_storage_variant_records_id_seq
366 -- Name: active_storage_variant_records_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
369 ALTER SEQUENCE public.active_storage_variant_records_id_seq OWNED BY public.active_storage_variant_records.id;
373 -- Name: ar_internal_metadata; Type: TABLE; Schema: public; Owner: -
376 CREATE TABLE public.ar_internal_metadata (
377 key character varying NOT NULL,
378 value character varying,
379 created_at timestamp(6) without time zone NOT NULL,
380 updated_at timestamp(6) without time zone NOT NULL
385 -- Name: changeset_comments; Type: TABLE; Schema: public; Owner: -
388 CREATE TABLE public.changeset_comments (
390 changeset_id bigint NOT NULL,
391 author_id bigint NOT NULL,
393 created_at timestamp without time zone NOT NULL,
394 visible boolean NOT NULL
399 -- Name: changeset_comments_id_seq; Type: SEQUENCE; Schema: public; Owner: -
402 CREATE SEQUENCE public.changeset_comments_id_seq
412 -- Name: changeset_comments_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
415 ALTER SEQUENCE public.changeset_comments_id_seq OWNED BY public.changeset_comments.id;
419 -- Name: changeset_tags; Type: TABLE; Schema: public; Owner: -
422 CREATE TABLE public.changeset_tags (
423 changeset_id bigint NOT NULL,
424 k character varying DEFAULT ''::character varying NOT NULL,
425 v character varying DEFAULT ''::character varying NOT NULL
430 -- Name: changesets; Type: TABLE; Schema: public; Owner: -
433 CREATE TABLE public.changesets (
435 user_id bigint NOT NULL,
436 created_at timestamp without time zone NOT NULL,
441 closed_at timestamp without time zone NOT NULL,
442 num_changes integer DEFAULT 0 NOT NULL
447 -- Name: changesets_id_seq; Type: SEQUENCE; Schema: public; Owner: -
450 CREATE SEQUENCE public.changesets_id_seq
459 -- Name: changesets_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
462 ALTER SEQUENCE public.changesets_id_seq OWNED BY public.changesets.id;
466 -- Name: changesets_subscribers; Type: TABLE; Schema: public; Owner: -
469 CREATE TABLE public.changesets_subscribers (
470 subscriber_id bigint NOT NULL,
471 changeset_id bigint NOT NULL
476 -- Name: current_node_tags; Type: TABLE; Schema: public; Owner: -
479 CREATE TABLE public.current_node_tags (
480 node_id bigint NOT NULL,
481 k character varying DEFAULT ''::character varying NOT NULL,
482 v character varying DEFAULT ''::character varying NOT NULL
487 -- Name: current_nodes; Type: TABLE; Schema: public; Owner: -
490 CREATE TABLE public.current_nodes (
492 latitude integer NOT NULL,
493 longitude integer NOT NULL,
494 changeset_id bigint NOT NULL,
495 visible boolean NOT NULL,
496 "timestamp" timestamp without time zone NOT NULL,
497 tile bigint NOT NULL,
498 version bigint NOT NULL
503 -- Name: current_nodes_id_seq; Type: SEQUENCE; Schema: public; Owner: -
506 CREATE SEQUENCE public.current_nodes_id_seq
515 -- Name: current_nodes_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
518 ALTER SEQUENCE public.current_nodes_id_seq OWNED BY public.current_nodes.id;
522 -- Name: current_relation_members; Type: TABLE; Schema: public; Owner: -
525 CREATE TABLE public.current_relation_members (
526 relation_id bigint NOT NULL,
527 member_type public.nwr_enum NOT NULL,
528 member_id bigint NOT NULL,
529 member_role character varying NOT NULL,
530 sequence_id integer DEFAULT 0 NOT NULL
535 -- Name: current_relation_tags; Type: TABLE; Schema: public; Owner: -
538 CREATE TABLE public.current_relation_tags (
539 relation_id bigint NOT NULL,
540 k character varying DEFAULT ''::character varying NOT NULL,
541 v character varying DEFAULT ''::character varying NOT NULL
546 -- Name: current_relations; Type: TABLE; Schema: public; Owner: -
549 CREATE TABLE public.current_relations (
551 changeset_id bigint NOT NULL,
552 "timestamp" timestamp without time zone NOT NULL,
553 visible boolean NOT NULL,
554 version bigint NOT NULL
559 -- Name: current_relations_id_seq; Type: SEQUENCE; Schema: public; Owner: -
562 CREATE SEQUENCE public.current_relations_id_seq
571 -- Name: current_relations_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
574 ALTER SEQUENCE public.current_relations_id_seq OWNED BY public.current_relations.id;
578 -- Name: current_way_nodes; Type: TABLE; Schema: public; Owner: -
581 CREATE TABLE public.current_way_nodes (
582 way_id bigint NOT NULL,
583 node_id bigint NOT NULL,
584 sequence_id bigint NOT NULL
589 -- Name: current_way_tags; Type: TABLE; Schema: public; Owner: -
592 CREATE TABLE public.current_way_tags (
593 way_id bigint NOT NULL,
594 k character varying DEFAULT ''::character varying NOT NULL,
595 v character varying DEFAULT ''::character varying NOT NULL
600 -- Name: current_ways; Type: TABLE; Schema: public; Owner: -
603 CREATE TABLE public.current_ways (
605 changeset_id bigint NOT NULL,
606 "timestamp" timestamp without time zone NOT NULL,
607 visible boolean NOT NULL,
608 version bigint NOT NULL
613 -- Name: current_ways_id_seq; Type: SEQUENCE; Schema: public; Owner: -
616 CREATE SEQUENCE public.current_ways_id_seq
625 -- Name: current_ways_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
628 ALTER SEQUENCE public.current_ways_id_seq OWNED BY public.current_ways.id;
632 -- Name: delayed_jobs; Type: TABLE; Schema: public; Owner: -
635 CREATE TABLE public.delayed_jobs (
637 priority integer DEFAULT 0 NOT NULL,
638 attempts integer DEFAULT 0 NOT NULL,
639 handler text NOT NULL,
641 run_at timestamp without time zone,
642 locked_at timestamp without time zone,
643 failed_at timestamp without time zone,
644 locked_by character varying,
645 queue character varying,
646 created_at timestamp without time zone,
647 updated_at timestamp without time zone
652 -- Name: delayed_jobs_id_seq; Type: SEQUENCE; Schema: public; Owner: -
655 CREATE SEQUENCE public.delayed_jobs_id_seq
664 -- Name: delayed_jobs_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
667 ALTER SEQUENCE public.delayed_jobs_id_seq OWNED BY public.delayed_jobs.id;
671 -- Name: diary_comments; Type: TABLE; Schema: public; Owner: -
674 CREATE TABLE public.diary_comments (
676 diary_entry_id bigint NOT NULL,
677 user_id bigint NOT NULL,
679 created_at timestamp without time zone NOT NULL,
680 updated_at timestamp without time zone NOT NULL,
681 visible boolean DEFAULT true NOT NULL,
682 body_format public.format_enum DEFAULT 'markdown'::public.format_enum NOT NULL
687 -- Name: diary_comments_id_seq; Type: SEQUENCE; Schema: public; Owner: -
690 CREATE SEQUENCE public.diary_comments_id_seq
699 -- Name: diary_comments_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
702 ALTER SEQUENCE public.diary_comments_id_seq OWNED BY public.diary_comments.id;
706 -- Name: diary_entries; Type: TABLE; Schema: public; Owner: -
709 CREATE TABLE public.diary_entries (
711 user_id bigint NOT NULL,
712 title character varying NOT NULL,
714 created_at timestamp without time zone NOT NULL,
715 updated_at timestamp without time zone NOT NULL,
716 latitude double precision,
717 longitude double precision,
718 language_code character varying DEFAULT 'en'::character varying NOT NULL,
719 visible boolean DEFAULT true NOT NULL,
720 body_format public.format_enum DEFAULT 'markdown'::public.format_enum NOT NULL
725 -- Name: diary_entries_id_seq; Type: SEQUENCE; Schema: public; Owner: -
728 CREATE SEQUENCE public.diary_entries_id_seq
737 -- Name: diary_entries_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
740 ALTER SEQUENCE public.diary_entries_id_seq OWNED BY public.diary_entries.id;
744 -- Name: diary_entry_subscriptions; Type: TABLE; Schema: public; Owner: -
747 CREATE TABLE public.diary_entry_subscriptions (
748 user_id bigint NOT NULL,
749 diary_entry_id bigint NOT NULL
754 -- Name: friends; Type: TABLE; Schema: public; Owner: -
757 CREATE TABLE public.friends (
759 user_id bigint NOT NULL,
760 friend_user_id bigint NOT NULL,
761 created_at timestamp without time zone
766 -- Name: friends_id_seq; Type: SEQUENCE; Schema: public; Owner: -
769 CREATE SEQUENCE public.friends_id_seq
778 -- Name: friends_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
781 ALTER SEQUENCE public.friends_id_seq OWNED BY public.friends.id;
785 -- Name: gps_points; Type: TABLE; Schema: public; Owner: -
788 CREATE TABLE public.gps_points (
789 altitude double precision,
790 trackid integer NOT NULL,
791 latitude integer NOT NULL,
792 longitude integer NOT NULL,
793 gpx_id bigint NOT NULL,
794 "timestamp" timestamp without time zone,
800 -- Name: gpx_file_tags; Type: TABLE; Schema: public; Owner: -
803 CREATE TABLE public.gpx_file_tags (
804 gpx_id bigint NOT NULL,
805 tag character varying NOT NULL,
811 -- Name: gpx_file_tags_id_seq; Type: SEQUENCE; Schema: public; Owner: -
814 CREATE SEQUENCE public.gpx_file_tags_id_seq
823 -- Name: gpx_file_tags_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
826 ALTER SEQUENCE public.gpx_file_tags_id_seq OWNED BY public.gpx_file_tags.id;
830 -- Name: gpx_files; Type: TABLE; Schema: public; Owner: -
833 CREATE TABLE public.gpx_files (
835 user_id bigint NOT NULL,
836 visible boolean DEFAULT true NOT NULL,
837 name character varying DEFAULT ''::character varying NOT NULL,
839 latitude double precision,
840 longitude double precision,
841 "timestamp" timestamp without time zone NOT NULL,
842 description character varying DEFAULT ''::character varying NOT NULL,
843 inserted boolean NOT NULL,
844 visibility public.gpx_visibility_enum DEFAULT 'public'::public.gpx_visibility_enum NOT NULL
849 -- Name: gpx_files_id_seq; Type: SEQUENCE; Schema: public; Owner: -
852 CREATE SEQUENCE public.gpx_files_id_seq
861 -- Name: gpx_files_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
864 ALTER SEQUENCE public.gpx_files_id_seq OWNED BY public.gpx_files.id;
868 -- Name: issue_comments; Type: TABLE; Schema: public; Owner: -
871 CREATE TABLE public.issue_comments (
873 issue_id integer NOT NULL,
874 user_id integer NOT NULL,
876 created_at timestamp without time zone NOT NULL,
877 updated_at timestamp without time zone NOT NULL
882 -- Name: issue_comments_id_seq; Type: SEQUENCE; Schema: public; Owner: -
885 CREATE SEQUENCE public.issue_comments_id_seq
895 -- Name: issue_comments_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
898 ALTER SEQUENCE public.issue_comments_id_seq OWNED BY public.issue_comments.id;
902 -- Name: issues; Type: TABLE; Schema: public; Owner: -
905 CREATE TABLE public.issues (
907 reportable_type character varying NOT NULL,
908 reportable_id integer NOT NULL,
909 reported_user_id integer,
910 status public.issue_status_enum DEFAULT 'open'::public.issue_status_enum NOT NULL,
911 assigned_role public.user_role_enum NOT NULL,
912 resolved_at timestamp without time zone,
915 reports_count integer DEFAULT 0,
916 created_at timestamp without time zone NOT NULL,
917 updated_at timestamp without time zone NOT NULL
922 -- Name: issues_id_seq; Type: SEQUENCE; Schema: public; Owner: -
925 CREATE SEQUENCE public.issues_id_seq
935 -- Name: issues_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
938 ALTER SEQUENCE public.issues_id_seq OWNED BY public.issues.id;
942 -- Name: languages; Type: TABLE; Schema: public; Owner: -
945 CREATE TABLE public.languages (
946 code character varying NOT NULL,
947 english_name character varying NOT NULL,
948 native_name character varying
953 -- Name: messages; Type: TABLE; Schema: public; Owner: -
956 CREATE TABLE public.messages (
958 from_user_id bigint NOT NULL,
959 title character varying NOT NULL,
961 sent_on timestamp without time zone NOT NULL,
962 message_read boolean DEFAULT false NOT NULL,
963 to_user_id bigint NOT NULL,
964 to_user_visible boolean DEFAULT true NOT NULL,
965 from_user_visible boolean DEFAULT true NOT NULL,
966 body_format public.format_enum DEFAULT 'markdown'::public.format_enum NOT NULL,
967 muted boolean DEFAULT false NOT NULL
972 -- Name: messages_id_seq; Type: SEQUENCE; Schema: public; Owner: -
975 CREATE SEQUENCE public.messages_id_seq
984 -- Name: messages_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
987 ALTER SEQUENCE public.messages_id_seq OWNED BY public.messages.id;
991 -- Name: node_tags; Type: TABLE; Schema: public; Owner: -
994 CREATE TABLE public.node_tags (
995 node_id bigint NOT NULL,
996 version bigint NOT NULL,
997 k character varying DEFAULT ''::character varying NOT NULL,
998 v character varying DEFAULT ''::character varying NOT NULL
1003 -- Name: nodes; Type: TABLE; Schema: public; Owner: -
1006 CREATE TABLE public.nodes (
1007 node_id bigint NOT NULL,
1008 latitude integer NOT NULL,
1009 longitude integer NOT NULL,
1010 changeset_id bigint NOT NULL,
1011 visible boolean NOT NULL,
1012 "timestamp" timestamp without time zone NOT NULL,
1013 tile bigint NOT NULL,
1014 version bigint NOT NULL,
1015 redaction_id integer
1020 -- Name: note_comments; Type: TABLE; Schema: public; Owner: -
1023 CREATE TABLE public.note_comments (
1025 note_id bigint NOT NULL,
1026 visible boolean NOT NULL,
1027 created_at timestamp without time zone NOT NULL,
1031 event public.note_event_enum
1036 -- Name: note_comments_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1039 CREATE SEQUENCE public.note_comments_id_seq
1048 -- Name: note_comments_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1051 ALTER SEQUENCE public.note_comments_id_seq OWNED BY public.note_comments.id;
1055 -- Name: notes; Type: TABLE; Schema: public; Owner: -
1058 CREATE TABLE public.notes (
1060 latitude integer NOT NULL,
1061 longitude integer NOT NULL,
1062 tile bigint NOT NULL,
1063 updated_at timestamp without time zone NOT NULL,
1064 created_at timestamp without time zone NOT NULL,
1065 status public.note_status_enum NOT NULL,
1066 closed_at timestamp without time zone
1071 -- Name: notes_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1074 CREATE SEQUENCE public.notes_id_seq
1083 -- Name: notes_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1086 ALTER SEQUENCE public.notes_id_seq OWNED BY public.notes.id;
1090 -- Name: oauth_access_grants; Type: TABLE; Schema: public; Owner: -
1093 CREATE TABLE public.oauth_access_grants (
1095 resource_owner_id bigint NOT NULL,
1096 application_id bigint NOT NULL,
1097 token character varying NOT NULL,
1098 expires_in integer NOT NULL,
1099 redirect_uri text NOT NULL,
1100 created_at timestamp without time zone NOT NULL,
1101 revoked_at timestamp without time zone,
1102 scopes character varying DEFAULT ''::character varying NOT NULL,
1103 code_challenge character varying,
1104 code_challenge_method character varying
1109 -- Name: oauth_access_grants_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1112 CREATE SEQUENCE public.oauth_access_grants_id_seq
1121 -- Name: oauth_access_grants_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1124 ALTER SEQUENCE public.oauth_access_grants_id_seq OWNED BY public.oauth_access_grants.id;
1128 -- Name: oauth_access_tokens; Type: TABLE; Schema: public; Owner: -
1131 CREATE TABLE public.oauth_access_tokens (
1133 resource_owner_id bigint,
1134 application_id bigint NOT NULL,
1135 token character varying NOT NULL,
1136 refresh_token character varying,
1138 revoked_at timestamp without time zone,
1139 created_at timestamp without time zone NOT NULL,
1140 scopes character varying,
1141 previous_refresh_token character varying DEFAULT ''::character varying NOT NULL
1146 -- Name: oauth_access_tokens_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1149 CREATE SEQUENCE public.oauth_access_tokens_id_seq
1158 -- Name: oauth_access_tokens_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1161 ALTER SEQUENCE public.oauth_access_tokens_id_seq OWNED BY public.oauth_access_tokens.id;
1165 -- Name: oauth_applications; Type: TABLE; Schema: public; Owner: -
1168 CREATE TABLE public.oauth_applications (
1170 owner_type character varying NOT NULL,
1171 owner_id bigint NOT NULL,
1172 name character varying NOT NULL,
1173 uid character varying NOT NULL,
1174 secret character varying NOT NULL,
1175 redirect_uri text NOT NULL,
1176 scopes character varying DEFAULT ''::character varying NOT NULL,
1177 confidential boolean DEFAULT true NOT NULL,
1178 created_at timestamp(6) without time zone NOT NULL,
1179 updated_at timestamp(6) without time zone NOT NULL
1184 -- Name: oauth_applications_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1187 CREATE SEQUENCE public.oauth_applications_id_seq
1196 -- Name: oauth_applications_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1199 ALTER SEQUENCE public.oauth_applications_id_seq OWNED BY public.oauth_applications.id;
1203 -- Name: oauth_openid_requests; Type: TABLE; Schema: public; Owner: -
1206 CREATE TABLE public.oauth_openid_requests (
1208 access_grant_id bigint NOT NULL,
1209 nonce character varying NOT NULL
1214 -- Name: oauth_openid_requests_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1217 CREATE SEQUENCE public.oauth_openid_requests_id_seq
1226 -- Name: oauth_openid_requests_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1229 ALTER SEQUENCE public.oauth_openid_requests_id_seq OWNED BY public.oauth_openid_requests.id;
1233 -- Name: redactions; Type: TABLE; Schema: public; Owner: -
1236 CREATE TABLE public.redactions (
1237 id integer NOT NULL,
1238 title character varying NOT NULL,
1239 description text NOT NULL,
1240 created_at timestamp without time zone,
1241 updated_at timestamp without time zone,
1242 user_id bigint NOT NULL,
1243 description_format public.format_enum DEFAULT 'markdown'::public.format_enum NOT NULL
1248 -- Name: redactions_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1251 CREATE SEQUENCE public.redactions_id_seq
1261 -- Name: redactions_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1264 ALTER SEQUENCE public.redactions_id_seq OWNED BY public.redactions.id;
1268 -- Name: relation_members; Type: TABLE; Schema: public; Owner: -
1271 CREATE TABLE public.relation_members (
1272 relation_id bigint NOT NULL,
1273 member_type public.nwr_enum NOT NULL,
1274 member_id bigint NOT NULL,
1275 member_role character varying NOT NULL,
1276 version bigint DEFAULT 0 NOT NULL,
1277 sequence_id integer DEFAULT 0 NOT NULL
1282 -- Name: relation_tags; Type: TABLE; Schema: public; Owner: -
1285 CREATE TABLE public.relation_tags (
1286 relation_id bigint NOT NULL,
1287 k character varying DEFAULT ''::character varying NOT NULL,
1288 v character varying DEFAULT ''::character varying NOT NULL,
1289 version bigint NOT NULL
1294 -- Name: relations; Type: TABLE; Schema: public; Owner: -
1297 CREATE TABLE public.relations (
1298 relation_id bigint NOT NULL,
1299 changeset_id bigint NOT NULL,
1300 "timestamp" timestamp without time zone NOT NULL,
1301 version bigint NOT NULL,
1302 visible boolean DEFAULT true NOT NULL,
1303 redaction_id integer
1308 -- Name: reports; Type: TABLE; Schema: public; Owner: -
1311 CREATE TABLE public.reports (
1312 id integer NOT NULL,
1313 issue_id integer NOT NULL,
1314 user_id integer NOT NULL,
1315 details text NOT NULL,
1316 category character varying NOT NULL,
1317 created_at timestamp without time zone NOT NULL,
1318 updated_at timestamp without time zone NOT NULL
1323 -- Name: reports_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1326 CREATE SEQUENCE public.reports_id_seq
1336 -- Name: reports_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1339 ALTER SEQUENCE public.reports_id_seq OWNED BY public.reports.id;
1343 -- Name: schema_migrations; Type: TABLE; Schema: public; Owner: -
1346 CREATE TABLE public.schema_migrations (
1347 version character varying NOT NULL
1352 -- Name: user_blocks; Type: TABLE; Schema: public; Owner: -
1355 CREATE TABLE public.user_blocks (
1356 id integer NOT NULL,
1357 user_id bigint NOT NULL,
1358 creator_id bigint NOT NULL,
1359 reason text NOT NULL,
1360 ends_at timestamp without time zone NOT NULL,
1361 needs_view boolean DEFAULT false NOT NULL,
1363 created_at timestamp without time zone,
1364 updated_at timestamp without time zone,
1365 reason_format public.format_enum DEFAULT 'markdown'::public.format_enum NOT NULL,
1366 deactivates_at timestamp without time zone
1371 -- Name: user_blocks_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1374 CREATE SEQUENCE public.user_blocks_id_seq
1384 -- Name: user_blocks_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1387 ALTER SEQUENCE public.user_blocks_id_seq OWNED BY public.user_blocks.id;
1391 -- Name: user_mutes; Type: TABLE; Schema: public; Owner: -
1394 CREATE TABLE public.user_mutes (
1396 owner_id bigint NOT NULL,
1397 subject_id bigint NOT NULL,
1398 created_at timestamp(6) without time zone NOT NULL,
1399 updated_at timestamp(6) without time zone NOT NULL
1404 -- Name: user_mutes_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1407 CREATE SEQUENCE public.user_mutes_id_seq
1416 -- Name: user_mutes_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1419 ALTER SEQUENCE public.user_mutes_id_seq OWNED BY public.user_mutes.id;
1423 -- Name: user_preferences; Type: TABLE; Schema: public; Owner: -
1426 CREATE TABLE public.user_preferences (
1427 user_id bigint NOT NULL,
1428 k character varying NOT NULL,
1429 v character varying NOT NULL
1434 -- Name: user_roles; Type: TABLE; Schema: public; Owner: -
1437 CREATE TABLE public.user_roles (
1438 id integer NOT NULL,
1439 user_id bigint NOT NULL,
1440 role public.user_role_enum NOT NULL,
1441 created_at timestamp without time zone,
1442 updated_at timestamp without time zone,
1443 granter_id bigint NOT NULL
1448 -- Name: user_roles_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1451 CREATE SEQUENCE public.user_roles_id_seq
1461 -- Name: user_roles_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1464 ALTER SEQUENCE public.user_roles_id_seq OWNED BY public.user_roles.id;
1468 -- Name: users; Type: TABLE; Schema: public; Owner: -
1471 CREATE TABLE public.users (
1472 email character varying NOT NULL,
1474 pass_crypt character varying NOT NULL,
1475 creation_time timestamp without time zone NOT NULL,
1476 display_name character varying DEFAULT ''::character varying NOT NULL,
1477 data_public boolean DEFAULT false NOT NULL,
1478 description text DEFAULT ''::text NOT NULL,
1479 home_lat double precision,
1480 home_lon double precision,
1481 home_zoom smallint DEFAULT 3,
1482 pass_salt character varying,
1483 email_valid boolean DEFAULT false NOT NULL,
1484 new_email character varying,
1485 creation_ip character varying,
1486 languages character varying,
1487 status public.user_status_enum DEFAULT 'pending'::public.user_status_enum NOT NULL,
1488 terms_agreed timestamp without time zone,
1489 consider_pd boolean DEFAULT false NOT NULL,
1490 auth_uid character varying,
1491 preferred_editor character varying,
1492 terms_seen boolean DEFAULT false NOT NULL,
1493 description_format public.format_enum DEFAULT 'markdown'::public.format_enum NOT NULL,
1494 changesets_count integer DEFAULT 0 NOT NULL,
1495 traces_count integer DEFAULT 0 NOT NULL,
1496 diary_entries_count integer DEFAULT 0 NOT NULL,
1497 image_use_gravatar boolean DEFAULT false NOT NULL,
1498 auth_provider character varying,
1500 tou_agreed timestamp without time zone,
1501 diary_comments_count integer DEFAULT 0,
1502 note_comments_count integer DEFAULT 0,
1503 creation_address inet
1508 -- Name: users_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1511 CREATE SEQUENCE public.users_id_seq
1520 -- Name: users_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1523 ALTER SEQUENCE public.users_id_seq OWNED BY public.users.id;
1527 -- Name: way_nodes; Type: TABLE; Schema: public; Owner: -
1530 CREATE TABLE public.way_nodes (
1531 way_id bigint NOT NULL,
1532 node_id bigint NOT NULL,
1533 version bigint NOT NULL,
1534 sequence_id bigint NOT NULL
1539 -- Name: way_tags; Type: TABLE; Schema: public; Owner: -
1542 CREATE TABLE public.way_tags (
1543 way_id bigint NOT NULL,
1544 k character varying NOT NULL,
1545 v character varying NOT NULL,
1546 version bigint NOT NULL
1551 -- Name: ways; Type: TABLE; Schema: public; Owner: -
1554 CREATE TABLE public.ways (
1555 way_id bigint NOT NULL,
1556 changeset_id bigint NOT NULL,
1557 "timestamp" timestamp without time zone NOT NULL,
1558 version bigint NOT NULL,
1559 visible boolean DEFAULT true NOT NULL,
1560 redaction_id integer
1565 -- Name: acls id; Type: DEFAULT; Schema: public; Owner: -
1568 ALTER TABLE ONLY public.acls ALTER COLUMN id SET DEFAULT nextval('public.acls_id_seq'::regclass);
1572 -- Name: active_storage_attachments id; Type: DEFAULT; Schema: public; Owner: -
1575 ALTER TABLE ONLY public.active_storage_attachments ALTER COLUMN id SET DEFAULT nextval('public.active_storage_attachments_id_seq'::regclass);
1579 -- Name: active_storage_blobs id; Type: DEFAULT; Schema: public; Owner: -
1582 ALTER TABLE ONLY public.active_storage_blobs ALTER COLUMN id SET DEFAULT nextval('public.active_storage_blobs_id_seq'::regclass);
1586 -- Name: active_storage_variant_records id; Type: DEFAULT; Schema: public; Owner: -
1589 ALTER TABLE ONLY public.active_storage_variant_records ALTER COLUMN id SET DEFAULT nextval('public.active_storage_variant_records_id_seq'::regclass);
1593 -- Name: changeset_comments id; Type: DEFAULT; Schema: public; Owner: -
1596 ALTER TABLE ONLY public.changeset_comments ALTER COLUMN id SET DEFAULT nextval('public.changeset_comments_id_seq'::regclass);
1600 -- Name: changesets id; Type: DEFAULT; Schema: public; Owner: -
1603 ALTER TABLE ONLY public.changesets ALTER COLUMN id SET DEFAULT nextval('public.changesets_id_seq'::regclass);
1607 -- Name: current_nodes id; Type: DEFAULT; Schema: public; Owner: -
1610 ALTER TABLE ONLY public.current_nodes ALTER COLUMN id SET DEFAULT nextval('public.current_nodes_id_seq'::regclass);
1614 -- Name: current_relations id; Type: DEFAULT; Schema: public; Owner: -
1617 ALTER TABLE ONLY public.current_relations ALTER COLUMN id SET DEFAULT nextval('public.current_relations_id_seq'::regclass);
1621 -- Name: current_ways id; Type: DEFAULT; Schema: public; Owner: -
1624 ALTER TABLE ONLY public.current_ways ALTER COLUMN id SET DEFAULT nextval('public.current_ways_id_seq'::regclass);
1628 -- Name: delayed_jobs id; Type: DEFAULT; Schema: public; Owner: -
1631 ALTER TABLE ONLY public.delayed_jobs ALTER COLUMN id SET DEFAULT nextval('public.delayed_jobs_id_seq'::regclass);
1635 -- Name: diary_comments id; Type: DEFAULT; Schema: public; Owner: -
1638 ALTER TABLE ONLY public.diary_comments ALTER COLUMN id SET DEFAULT nextval('public.diary_comments_id_seq'::regclass);
1642 -- Name: diary_entries id; Type: DEFAULT; Schema: public; Owner: -
1645 ALTER TABLE ONLY public.diary_entries ALTER COLUMN id SET DEFAULT nextval('public.diary_entries_id_seq'::regclass);
1649 -- Name: friends id; Type: DEFAULT; Schema: public; Owner: -
1652 ALTER TABLE ONLY public.friends ALTER COLUMN id SET DEFAULT nextval('public.friends_id_seq'::regclass);
1656 -- Name: gpx_file_tags id; Type: DEFAULT; Schema: public; Owner: -
1659 ALTER TABLE ONLY public.gpx_file_tags ALTER COLUMN id SET DEFAULT nextval('public.gpx_file_tags_id_seq'::regclass);
1663 -- Name: gpx_files id; Type: DEFAULT; Schema: public; Owner: -
1666 ALTER TABLE ONLY public.gpx_files ALTER COLUMN id SET DEFAULT nextval('public.gpx_files_id_seq'::regclass);
1670 -- Name: issue_comments id; Type: DEFAULT; Schema: public; Owner: -
1673 ALTER TABLE ONLY public.issue_comments ALTER COLUMN id SET DEFAULT nextval('public.issue_comments_id_seq'::regclass);
1677 -- Name: issues id; Type: DEFAULT; Schema: public; Owner: -
1680 ALTER TABLE ONLY public.issues ALTER COLUMN id SET DEFAULT nextval('public.issues_id_seq'::regclass);
1684 -- Name: messages id; Type: DEFAULT; Schema: public; Owner: -
1687 ALTER TABLE ONLY public.messages ALTER COLUMN id SET DEFAULT nextval('public.messages_id_seq'::regclass);
1691 -- Name: note_comments id; Type: DEFAULT; Schema: public; Owner: -
1694 ALTER TABLE ONLY public.note_comments ALTER COLUMN id SET DEFAULT nextval('public.note_comments_id_seq'::regclass);
1698 -- Name: notes id; Type: DEFAULT; Schema: public; Owner: -
1701 ALTER TABLE ONLY public.notes ALTER COLUMN id SET DEFAULT nextval('public.notes_id_seq'::regclass);
1705 -- Name: oauth_access_grants id; Type: DEFAULT; Schema: public; Owner: -
1708 ALTER TABLE ONLY public.oauth_access_grants ALTER COLUMN id SET DEFAULT nextval('public.oauth_access_grants_id_seq'::regclass);
1712 -- Name: oauth_access_tokens id; Type: DEFAULT; Schema: public; Owner: -
1715 ALTER TABLE ONLY public.oauth_access_tokens ALTER COLUMN id SET DEFAULT nextval('public.oauth_access_tokens_id_seq'::regclass);
1719 -- Name: oauth_applications id; Type: DEFAULT; Schema: public; Owner: -
1722 ALTER TABLE ONLY public.oauth_applications ALTER COLUMN id SET DEFAULT nextval('public.oauth_applications_id_seq'::regclass);
1726 -- Name: oauth_openid_requests id; Type: DEFAULT; Schema: public; Owner: -
1729 ALTER TABLE ONLY public.oauth_openid_requests ALTER COLUMN id SET DEFAULT nextval('public.oauth_openid_requests_id_seq'::regclass);
1733 -- Name: redactions id; Type: DEFAULT; Schema: public; Owner: -
1736 ALTER TABLE ONLY public.redactions ALTER COLUMN id SET DEFAULT nextval('public.redactions_id_seq'::regclass);
1740 -- Name: reports id; Type: DEFAULT; Schema: public; Owner: -
1743 ALTER TABLE ONLY public.reports ALTER COLUMN id SET DEFAULT nextval('public.reports_id_seq'::regclass);
1747 -- Name: user_blocks id; Type: DEFAULT; Schema: public; Owner: -
1750 ALTER TABLE ONLY public.user_blocks ALTER COLUMN id SET DEFAULT nextval('public.user_blocks_id_seq'::regclass);
1754 -- Name: user_mutes id; Type: DEFAULT; Schema: public; Owner: -
1757 ALTER TABLE ONLY public.user_mutes ALTER COLUMN id SET DEFAULT nextval('public.user_mutes_id_seq'::regclass);
1761 -- Name: user_roles id; Type: DEFAULT; Schema: public; Owner: -
1764 ALTER TABLE ONLY public.user_roles ALTER COLUMN id SET DEFAULT nextval('public.user_roles_id_seq'::regclass);
1768 -- Name: users id; Type: DEFAULT; Schema: public; Owner: -
1771 ALTER TABLE ONLY public.users ALTER COLUMN id SET DEFAULT nextval('public.users_id_seq'::regclass);
1775 -- Name: acls acls_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1778 ALTER TABLE ONLY public.acls
1779 ADD CONSTRAINT acls_pkey PRIMARY KEY (id);
1783 -- Name: active_storage_attachments active_storage_attachments_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1786 ALTER TABLE ONLY public.active_storage_attachments
1787 ADD CONSTRAINT active_storage_attachments_pkey PRIMARY KEY (id);
1791 -- Name: active_storage_blobs active_storage_blobs_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1794 ALTER TABLE ONLY public.active_storage_blobs
1795 ADD CONSTRAINT active_storage_blobs_pkey PRIMARY KEY (id);
1799 -- Name: active_storage_variant_records active_storage_variant_records_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1802 ALTER TABLE ONLY public.active_storage_variant_records
1803 ADD CONSTRAINT active_storage_variant_records_pkey PRIMARY KEY (id);
1807 -- Name: ar_internal_metadata ar_internal_metadata_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1810 ALTER TABLE ONLY public.ar_internal_metadata
1811 ADD CONSTRAINT ar_internal_metadata_pkey PRIMARY KEY (key);
1815 -- Name: changeset_comments changeset_comments_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1818 ALTER TABLE ONLY public.changeset_comments
1819 ADD CONSTRAINT changeset_comments_pkey PRIMARY KEY (id);
1823 -- Name: changeset_tags changeset_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1826 ALTER TABLE ONLY public.changeset_tags
1827 ADD CONSTRAINT changeset_tags_pkey PRIMARY KEY (changeset_id, k);
1831 -- Name: changesets changesets_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1834 ALTER TABLE ONLY public.changesets
1835 ADD CONSTRAINT changesets_pkey PRIMARY KEY (id);
1839 -- Name: current_node_tags current_node_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1842 ALTER TABLE ONLY public.current_node_tags
1843 ADD CONSTRAINT current_node_tags_pkey PRIMARY KEY (node_id, k);
1847 -- Name: current_nodes current_nodes_pkey1; Type: CONSTRAINT; Schema: public; Owner: -
1850 ALTER TABLE ONLY public.current_nodes
1851 ADD CONSTRAINT current_nodes_pkey1 PRIMARY KEY (id);
1855 -- Name: current_relation_members current_relation_members_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1858 ALTER TABLE ONLY public.current_relation_members
1859 ADD CONSTRAINT current_relation_members_pkey PRIMARY KEY (relation_id, sequence_id);
1863 -- Name: current_relation_tags current_relation_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1866 ALTER TABLE ONLY public.current_relation_tags
1867 ADD CONSTRAINT current_relation_tags_pkey PRIMARY KEY (relation_id, k);
1871 -- Name: current_relations current_relations_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1874 ALTER TABLE ONLY public.current_relations
1875 ADD CONSTRAINT current_relations_pkey PRIMARY KEY (id);
1879 -- Name: current_way_nodes current_way_nodes_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1882 ALTER TABLE ONLY public.current_way_nodes
1883 ADD CONSTRAINT current_way_nodes_pkey PRIMARY KEY (way_id, sequence_id);
1887 -- Name: current_way_tags current_way_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1890 ALTER TABLE ONLY public.current_way_tags
1891 ADD CONSTRAINT current_way_tags_pkey PRIMARY KEY (way_id, k);
1895 -- Name: current_ways current_ways_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1898 ALTER TABLE ONLY public.current_ways
1899 ADD CONSTRAINT current_ways_pkey PRIMARY KEY (id);
1903 -- Name: delayed_jobs delayed_jobs_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1906 ALTER TABLE ONLY public.delayed_jobs
1907 ADD CONSTRAINT delayed_jobs_pkey PRIMARY KEY (id);
1911 -- Name: diary_comments diary_comments_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1914 ALTER TABLE ONLY public.diary_comments
1915 ADD CONSTRAINT diary_comments_pkey PRIMARY KEY (id);
1919 -- Name: diary_entries diary_entries_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1922 ALTER TABLE ONLY public.diary_entries
1923 ADD CONSTRAINT diary_entries_pkey PRIMARY KEY (id);
1927 -- Name: diary_entry_subscriptions diary_entry_subscriptions_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1930 ALTER TABLE ONLY public.diary_entry_subscriptions
1931 ADD CONSTRAINT diary_entry_subscriptions_pkey PRIMARY KEY (user_id, diary_entry_id);
1935 -- Name: friends friends_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1938 ALTER TABLE ONLY public.friends
1939 ADD CONSTRAINT friends_pkey PRIMARY KEY (id);
1943 -- Name: gpx_file_tags gpx_file_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1946 ALTER TABLE ONLY public.gpx_file_tags
1947 ADD CONSTRAINT gpx_file_tags_pkey PRIMARY KEY (id);
1951 -- Name: gpx_files gpx_files_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1954 ALTER TABLE ONLY public.gpx_files
1955 ADD CONSTRAINT gpx_files_pkey PRIMARY KEY (id);
1959 -- Name: issue_comments issue_comments_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1962 ALTER TABLE ONLY public.issue_comments
1963 ADD CONSTRAINT issue_comments_pkey PRIMARY KEY (id);
1967 -- Name: issues issues_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1970 ALTER TABLE ONLY public.issues
1971 ADD CONSTRAINT issues_pkey PRIMARY KEY (id);
1975 -- Name: languages languages_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1978 ALTER TABLE ONLY public.languages
1979 ADD CONSTRAINT languages_pkey PRIMARY KEY (code);
1983 -- Name: messages messages_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1986 ALTER TABLE ONLY public.messages
1987 ADD CONSTRAINT messages_pkey PRIMARY KEY (id);
1991 -- Name: node_tags node_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1994 ALTER TABLE ONLY public.node_tags
1995 ADD CONSTRAINT node_tags_pkey PRIMARY KEY (node_id, version, k);
1999 -- Name: nodes nodes_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2002 ALTER TABLE ONLY public.nodes
2003 ADD CONSTRAINT nodes_pkey PRIMARY KEY (node_id, version);
2007 -- Name: note_comments note_comments_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2010 ALTER TABLE ONLY public.note_comments
2011 ADD CONSTRAINT note_comments_pkey PRIMARY KEY (id);
2015 -- Name: notes notes_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2018 ALTER TABLE ONLY public.notes
2019 ADD CONSTRAINT notes_pkey PRIMARY KEY (id);
2023 -- Name: oauth_access_grants oauth_access_grants_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2026 ALTER TABLE ONLY public.oauth_access_grants
2027 ADD CONSTRAINT oauth_access_grants_pkey PRIMARY KEY (id);
2031 -- Name: oauth_access_tokens oauth_access_tokens_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2034 ALTER TABLE ONLY public.oauth_access_tokens
2035 ADD CONSTRAINT oauth_access_tokens_pkey PRIMARY KEY (id);
2039 -- Name: oauth_applications oauth_applications_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2042 ALTER TABLE ONLY public.oauth_applications
2043 ADD CONSTRAINT oauth_applications_pkey PRIMARY KEY (id);
2047 -- Name: oauth_openid_requests oauth_openid_requests_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2050 ALTER TABLE ONLY public.oauth_openid_requests
2051 ADD CONSTRAINT oauth_openid_requests_pkey PRIMARY KEY (id);
2055 -- Name: redactions redactions_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2058 ALTER TABLE ONLY public.redactions
2059 ADD CONSTRAINT redactions_pkey PRIMARY KEY (id);
2063 -- Name: relation_members relation_members_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2066 ALTER TABLE ONLY public.relation_members
2067 ADD CONSTRAINT relation_members_pkey PRIMARY KEY (relation_id, version, sequence_id);
2071 -- Name: relation_tags relation_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2074 ALTER TABLE ONLY public.relation_tags
2075 ADD CONSTRAINT relation_tags_pkey PRIMARY KEY (relation_id, version, k);
2079 -- Name: relations relations_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2082 ALTER TABLE ONLY public.relations
2083 ADD CONSTRAINT relations_pkey PRIMARY KEY (relation_id, version);
2087 -- Name: reports reports_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2090 ALTER TABLE ONLY public.reports
2091 ADD CONSTRAINT reports_pkey PRIMARY KEY (id);
2095 -- Name: schema_migrations schema_migrations_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2098 ALTER TABLE ONLY public.schema_migrations
2099 ADD CONSTRAINT schema_migrations_pkey PRIMARY KEY (version);
2103 -- Name: user_blocks user_blocks_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2106 ALTER TABLE ONLY public.user_blocks
2107 ADD CONSTRAINT user_blocks_pkey PRIMARY KEY (id);
2111 -- Name: user_mutes user_mutes_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2114 ALTER TABLE ONLY public.user_mutes
2115 ADD CONSTRAINT user_mutes_pkey PRIMARY KEY (id);
2119 -- Name: user_preferences user_preferences_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2122 ALTER TABLE ONLY public.user_preferences
2123 ADD CONSTRAINT user_preferences_pkey PRIMARY KEY (user_id, k);
2127 -- Name: user_roles user_roles_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2130 ALTER TABLE ONLY public.user_roles
2131 ADD CONSTRAINT user_roles_pkey PRIMARY KEY (id);
2135 -- Name: users users_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2138 ALTER TABLE ONLY public.users
2139 ADD CONSTRAINT users_pkey PRIMARY KEY (id);
2143 -- Name: way_nodes way_nodes_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2146 ALTER TABLE ONLY public.way_nodes
2147 ADD CONSTRAINT way_nodes_pkey PRIMARY KEY (way_id, version, sequence_id);
2151 -- Name: way_tags way_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2154 ALTER TABLE ONLY public.way_tags
2155 ADD CONSTRAINT way_tags_pkey PRIMARY KEY (way_id, version, k);
2159 -- Name: ways ways_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2162 ALTER TABLE ONLY public.ways
2163 ADD CONSTRAINT ways_pkey PRIMARY KEY (way_id, version);
2167 -- Name: acls_k_idx; Type: INDEX; Schema: public; Owner: -
2170 CREATE INDEX acls_k_idx ON public.acls USING btree (k);
2174 -- Name: changesets_bbox_idx; Type: INDEX; Schema: public; Owner: -
2177 CREATE INDEX changesets_bbox_idx ON public.changesets USING gist (min_lat, max_lat, min_lon, max_lon);
2181 -- Name: changesets_closed_at_idx; Type: INDEX; Schema: public; Owner: -
2184 CREATE INDEX changesets_closed_at_idx ON public.changesets USING btree (closed_at);
2188 -- Name: changesets_created_at_idx; Type: INDEX; Schema: public; Owner: -
2191 CREATE INDEX changesets_created_at_idx ON public.changesets USING btree (created_at);
2195 -- Name: changesets_user_id_created_at_idx; Type: INDEX; Schema: public; Owner: -
2198 CREATE INDEX changesets_user_id_created_at_idx ON public.changesets USING btree (user_id, created_at);
2202 -- Name: changesets_user_id_id_idx; Type: INDEX; Schema: public; Owner: -
2205 CREATE INDEX changesets_user_id_id_idx ON public.changesets USING btree (user_id, id);
2209 -- Name: current_nodes_tile_idx; Type: INDEX; Schema: public; Owner: -
2212 CREATE INDEX current_nodes_tile_idx ON public.current_nodes USING btree (tile);
2216 -- Name: current_nodes_timestamp_idx; Type: INDEX; Schema: public; Owner: -
2219 CREATE INDEX current_nodes_timestamp_idx ON public.current_nodes USING btree ("timestamp");
2223 -- Name: current_relation_members_member_idx; Type: INDEX; Schema: public; Owner: -
2226 CREATE INDEX current_relation_members_member_idx ON public.current_relation_members USING btree (member_type, member_id);
2230 -- Name: current_relations_timestamp_idx; Type: INDEX; Schema: public; Owner: -
2233 CREATE INDEX current_relations_timestamp_idx ON public.current_relations USING btree ("timestamp");
2237 -- Name: current_way_nodes_node_idx; Type: INDEX; Schema: public; Owner: -
2240 CREATE INDEX current_way_nodes_node_idx ON public.current_way_nodes USING btree (node_id);
2244 -- Name: current_ways_timestamp_idx; Type: INDEX; Schema: public; Owner: -
2247 CREATE INDEX current_ways_timestamp_idx ON public.current_ways USING btree ("timestamp");
2251 -- Name: delayed_jobs_priority; Type: INDEX; Schema: public; Owner: -
2254 CREATE INDEX delayed_jobs_priority ON public.delayed_jobs USING btree (priority, run_at);
2258 -- Name: diary_comment_user_id_created_at_index; Type: INDEX; Schema: public; Owner: -
2261 CREATE INDEX diary_comment_user_id_created_at_index ON public.diary_comments USING btree (user_id, created_at);
2265 -- Name: diary_comments_entry_id_idx; Type: INDEX; Schema: public; Owner: -
2268 CREATE UNIQUE INDEX diary_comments_entry_id_idx ON public.diary_comments USING btree (diary_entry_id, id);
2272 -- Name: diary_entry_created_at_index; Type: INDEX; Schema: public; Owner: -
2275 CREATE INDEX diary_entry_created_at_index ON public.diary_entries USING btree (created_at);
2279 -- Name: diary_entry_language_code_created_at_index; Type: INDEX; Schema: public; Owner: -
2282 CREATE INDEX diary_entry_language_code_created_at_index ON public.diary_entries USING btree (language_code, created_at);
2286 -- Name: diary_entry_user_id_created_at_index; Type: INDEX; Schema: public; Owner: -
2289 CREATE INDEX diary_entry_user_id_created_at_index ON public.diary_entries USING btree (user_id, created_at);
2293 -- Name: gpx_file_tags_gpxid_idx; Type: INDEX; Schema: public; Owner: -
2296 CREATE INDEX gpx_file_tags_gpxid_idx ON public.gpx_file_tags USING btree (gpx_id);
2300 -- Name: gpx_file_tags_tag_idx; Type: INDEX; Schema: public; Owner: -
2303 CREATE INDEX gpx_file_tags_tag_idx ON public.gpx_file_tags USING btree (tag);
2307 -- Name: gpx_files_timestamp_idx; Type: INDEX; Schema: public; Owner: -
2310 CREATE INDEX gpx_files_timestamp_idx ON public.gpx_files USING btree ("timestamp");
2314 -- Name: gpx_files_user_id_idx; Type: INDEX; Schema: public; Owner: -
2317 CREATE INDEX gpx_files_user_id_idx ON public.gpx_files USING btree (user_id);
2321 -- Name: gpx_files_visible_visibility_idx; Type: INDEX; Schema: public; Owner: -
2324 CREATE INDEX gpx_files_visible_visibility_idx ON public.gpx_files USING btree (visible, visibility);
2328 -- Name: index_acls_on_address; Type: INDEX; Schema: public; Owner: -
2331 CREATE INDEX index_acls_on_address ON public.acls USING gist (address inet_ops);
2335 -- Name: index_acls_on_domain; Type: INDEX; Schema: public; Owner: -
2338 CREATE INDEX index_acls_on_domain ON public.acls USING btree (domain);
2342 -- Name: index_acls_on_mx; Type: INDEX; Schema: public; Owner: -
2345 CREATE INDEX index_acls_on_mx ON public.acls USING btree (mx);
2349 -- Name: index_active_storage_attachments_on_blob_id; Type: INDEX; Schema: public; Owner: -
2352 CREATE INDEX index_active_storage_attachments_on_blob_id ON public.active_storage_attachments USING btree (blob_id);
2356 -- Name: index_active_storage_attachments_uniqueness; Type: INDEX; Schema: public; Owner: -
2359 CREATE UNIQUE INDEX index_active_storage_attachments_uniqueness ON public.active_storage_attachments USING btree (record_type, record_id, name, blob_id);
2363 -- Name: index_active_storage_blobs_on_key; Type: INDEX; Schema: public; Owner: -
2366 CREATE UNIQUE INDEX index_active_storage_blobs_on_key ON public.active_storage_blobs USING btree (key);
2370 -- Name: index_active_storage_variant_records_uniqueness; Type: INDEX; Schema: public; Owner: -
2373 CREATE UNIQUE INDEX index_active_storage_variant_records_uniqueness ON public.active_storage_variant_records USING btree (blob_id, variation_digest);
2377 -- Name: index_changeset_comments_on_author_id_and_created_at; Type: INDEX; Schema: public; Owner: -
2380 CREATE INDEX index_changeset_comments_on_author_id_and_created_at ON public.changeset_comments USING btree (author_id, created_at);
2384 -- Name: index_changeset_comments_on_changeset_id_and_created_at; Type: INDEX; Schema: public; Owner: -
2387 CREATE INDEX index_changeset_comments_on_changeset_id_and_created_at ON public.changeset_comments USING btree (changeset_id, created_at);
2391 -- Name: index_changeset_comments_on_created_at; Type: INDEX; Schema: public; Owner: -
2394 CREATE INDEX index_changeset_comments_on_created_at ON public.changeset_comments USING btree (created_at);
2398 -- Name: index_changesets_on_user_id_and_closed_at; Type: INDEX; Schema: public; Owner: -
2401 CREATE INDEX index_changesets_on_user_id_and_closed_at ON public.changesets USING btree (user_id, closed_at);
2405 -- Name: index_changesets_subscribers_on_changeset_id; Type: INDEX; Schema: public; Owner: -
2408 CREATE INDEX index_changesets_subscribers_on_changeset_id ON public.changesets_subscribers USING btree (changeset_id);
2412 -- Name: index_changesets_subscribers_on_subscriber_id_and_changeset_id; Type: INDEX; Schema: public; Owner: -
2415 CREATE UNIQUE INDEX index_changesets_subscribers_on_subscriber_id_and_changeset_id ON public.changesets_subscribers USING btree (subscriber_id, changeset_id);
2419 -- Name: index_diary_entry_subscriptions_on_diary_entry_id; Type: INDEX; Schema: public; Owner: -
2422 CREATE INDEX index_diary_entry_subscriptions_on_diary_entry_id ON public.diary_entry_subscriptions USING btree (diary_entry_id);
2426 -- Name: index_friends_on_user_id_and_created_at; Type: INDEX; Schema: public; Owner: -
2429 CREATE INDEX index_friends_on_user_id_and_created_at ON public.friends USING btree (user_id, created_at);
2433 -- Name: index_issue_comments_on_issue_id; Type: INDEX; Schema: public; Owner: -
2436 CREATE INDEX index_issue_comments_on_issue_id ON public.issue_comments USING btree (issue_id);
2440 -- Name: index_issue_comments_on_user_id; Type: INDEX; Schema: public; Owner: -
2443 CREATE INDEX index_issue_comments_on_user_id ON public.issue_comments USING btree (user_id);
2447 -- Name: index_issues_on_assigned_role; Type: INDEX; Schema: public; Owner: -
2450 CREATE INDEX index_issues_on_assigned_role ON public.issues USING btree (assigned_role);
2454 -- Name: index_issues_on_reportable_type_and_reportable_id; Type: INDEX; Schema: public; Owner: -
2457 CREATE INDEX index_issues_on_reportable_type_and_reportable_id ON public.issues USING btree (reportable_type, reportable_id);
2461 -- Name: index_issues_on_reported_user_id; Type: INDEX; Schema: public; Owner: -
2464 CREATE INDEX index_issues_on_reported_user_id ON public.issues USING btree (reported_user_id);
2468 -- Name: index_issues_on_status; Type: INDEX; Schema: public; Owner: -
2471 CREATE INDEX index_issues_on_status ON public.issues USING btree (status);
2475 -- Name: index_issues_on_updated_by; Type: INDEX; Schema: public; Owner: -
2478 CREATE INDEX index_issues_on_updated_by ON public.issues USING btree (updated_by);
2482 -- Name: index_note_comments_on_author_id_and_created_at; Type: INDEX; Schema: public; Owner: -
2485 CREATE INDEX index_note_comments_on_author_id_and_created_at ON public.note_comments USING btree (author_id, created_at);
2489 -- Name: index_note_comments_on_body; Type: INDEX; Schema: public; Owner: -
2492 CREATE INDEX index_note_comments_on_body ON public.note_comments USING gin (to_tsvector('english'::regconfig, body));
2496 -- Name: index_note_comments_on_created_at; Type: INDEX; Schema: public; Owner: -
2499 CREATE INDEX index_note_comments_on_created_at ON public.note_comments USING btree (created_at);
2503 -- Name: index_oauth_access_grants_on_application_id; Type: INDEX; Schema: public; Owner: -
2506 CREATE INDEX index_oauth_access_grants_on_application_id ON public.oauth_access_grants USING btree (application_id);
2510 -- Name: index_oauth_access_grants_on_resource_owner_id; Type: INDEX; Schema: public; Owner: -
2513 CREATE INDEX index_oauth_access_grants_on_resource_owner_id ON public.oauth_access_grants USING btree (resource_owner_id);
2517 -- Name: index_oauth_access_grants_on_token; Type: INDEX; Schema: public; Owner: -
2520 CREATE UNIQUE INDEX index_oauth_access_grants_on_token ON public.oauth_access_grants USING btree (token);
2524 -- Name: index_oauth_access_tokens_on_application_id; Type: INDEX; Schema: public; Owner: -
2527 CREATE INDEX index_oauth_access_tokens_on_application_id ON public.oauth_access_tokens USING btree (application_id);
2531 -- Name: index_oauth_access_tokens_on_refresh_token; Type: INDEX; Schema: public; Owner: -
2534 CREATE UNIQUE INDEX index_oauth_access_tokens_on_refresh_token ON public.oauth_access_tokens USING btree (refresh_token);
2538 -- Name: index_oauth_access_tokens_on_resource_owner_id; Type: INDEX; Schema: public; Owner: -
2541 CREATE INDEX index_oauth_access_tokens_on_resource_owner_id ON public.oauth_access_tokens USING btree (resource_owner_id);
2545 -- Name: index_oauth_access_tokens_on_token; Type: INDEX; Schema: public; Owner: -
2548 CREATE UNIQUE INDEX index_oauth_access_tokens_on_token ON public.oauth_access_tokens USING btree (token);
2552 -- Name: index_oauth_applications_on_owner_type_and_owner_id; Type: INDEX; Schema: public; Owner: -
2555 CREATE INDEX index_oauth_applications_on_owner_type_and_owner_id ON public.oauth_applications USING btree (owner_type, owner_id);
2559 -- Name: index_oauth_applications_on_uid; Type: INDEX; Schema: public; Owner: -
2562 CREATE UNIQUE INDEX index_oauth_applications_on_uid ON public.oauth_applications USING btree (uid);
2566 -- Name: index_oauth_openid_requests_on_access_grant_id; Type: INDEX; Schema: public; Owner: -
2569 CREATE INDEX index_oauth_openid_requests_on_access_grant_id ON public.oauth_openid_requests USING btree (access_grant_id);
2573 -- Name: index_reports_on_issue_id; Type: INDEX; Schema: public; Owner: -
2576 CREATE INDEX index_reports_on_issue_id ON public.reports USING btree (issue_id);
2580 -- Name: index_reports_on_user_id; Type: INDEX; Schema: public; Owner: -
2583 CREATE INDEX index_reports_on_user_id ON public.reports USING btree (user_id);
2587 -- Name: index_user_blocks_on_creator_id_and_id; Type: INDEX; Schema: public; Owner: -
2590 CREATE INDEX index_user_blocks_on_creator_id_and_id ON public.user_blocks USING btree (creator_id, id);
2594 -- Name: index_user_blocks_on_user_id; Type: INDEX; Schema: public; Owner: -
2597 CREATE INDEX index_user_blocks_on_user_id ON public.user_blocks USING btree (user_id);
2601 -- Name: index_user_mutes_on_owner_id_and_subject_id; Type: INDEX; Schema: public; Owner: -
2604 CREATE UNIQUE INDEX index_user_mutes_on_owner_id_and_subject_id ON public.user_mutes USING btree (owner_id, subject_id);
2608 -- Name: index_users_on_creation_address; Type: INDEX; Schema: public; Owner: -
2611 CREATE INDEX index_users_on_creation_address ON public.users USING gist (creation_address inet_ops);
2615 -- Name: messages_from_user_id_idx; Type: INDEX; Schema: public; Owner: -
2618 CREATE INDEX messages_from_user_id_idx ON public.messages USING btree (from_user_id);
2622 -- Name: messages_to_user_id_idx; Type: INDEX; Schema: public; Owner: -
2625 CREATE INDEX messages_to_user_id_idx ON public.messages USING btree (to_user_id);
2629 -- Name: nodes_changeset_id_idx; Type: INDEX; Schema: public; Owner: -
2632 CREATE INDEX nodes_changeset_id_idx ON public.nodes USING btree (changeset_id);
2636 -- Name: nodes_tile_idx; Type: INDEX; Schema: public; Owner: -
2639 CREATE INDEX nodes_tile_idx ON public.nodes USING btree (tile);
2643 -- Name: nodes_timestamp_idx; Type: INDEX; Schema: public; Owner: -
2646 CREATE INDEX nodes_timestamp_idx ON public.nodes USING btree ("timestamp");
2650 -- Name: note_comments_note_id_idx; Type: INDEX; Schema: public; Owner: -
2653 CREATE INDEX note_comments_note_id_idx ON public.note_comments USING btree (note_id);
2657 -- Name: notes_created_at_idx; Type: INDEX; Schema: public; Owner: -
2660 CREATE INDEX notes_created_at_idx ON public.notes USING btree (created_at);
2664 -- Name: notes_tile_status_idx; Type: INDEX; Schema: public; Owner: -
2667 CREATE INDEX notes_tile_status_idx ON public.notes USING btree (tile, status);
2671 -- Name: notes_updated_at_idx; Type: INDEX; Schema: public; Owner: -
2674 CREATE INDEX notes_updated_at_idx ON public.notes USING btree (updated_at);
2678 -- Name: points_gpxid_idx; Type: INDEX; Schema: public; Owner: -
2681 CREATE INDEX points_gpxid_idx ON public.gps_points USING btree (gpx_id);
2685 -- Name: points_tile_idx; Type: INDEX; Schema: public; Owner: -
2688 CREATE INDEX points_tile_idx ON public.gps_points USING btree (tile);
2692 -- Name: relation_members_member_idx; Type: INDEX; Schema: public; Owner: -
2695 CREATE INDEX relation_members_member_idx ON public.relation_members USING btree (member_type, member_id);
2699 -- Name: relations_changeset_id_idx; Type: INDEX; Schema: public; Owner: -
2702 CREATE INDEX relations_changeset_id_idx ON public.relations USING btree (changeset_id);
2706 -- Name: relations_timestamp_idx; Type: INDEX; Schema: public; Owner: -
2709 CREATE INDEX relations_timestamp_idx ON public.relations USING btree ("timestamp");
2713 -- Name: user_id_idx; Type: INDEX; Schema: public; Owner: -
2716 CREATE INDEX user_id_idx ON public.friends USING btree (friend_user_id);
2720 -- Name: user_roles_id_role_unique; Type: INDEX; Schema: public; Owner: -
2723 CREATE UNIQUE INDEX user_roles_id_role_unique ON public.user_roles USING btree (user_id, role);
2727 -- Name: users_auth_idx; Type: INDEX; Schema: public; Owner: -
2730 CREATE UNIQUE INDEX users_auth_idx ON public.users USING btree (auth_provider, auth_uid);
2734 -- Name: users_display_name_canonical_idx; Type: INDEX; Schema: public; Owner: -
2737 CREATE INDEX users_display_name_canonical_idx ON public.users USING btree (lower(NORMALIZE(display_name, NFKC)));
2741 -- Name: users_display_name_idx; Type: INDEX; Schema: public; Owner: -
2744 CREATE UNIQUE INDEX users_display_name_idx ON public.users USING btree (display_name);
2748 -- Name: users_email_idx; Type: INDEX; Schema: public; Owner: -
2751 CREATE UNIQUE INDEX users_email_idx ON public.users USING btree (email);
2755 -- Name: users_email_lower_idx; Type: INDEX; Schema: public; Owner: -
2758 CREATE INDEX users_email_lower_idx ON public.users USING btree (lower((email)::text));
2762 -- Name: users_home_idx; Type: INDEX; Schema: public; Owner: -
2765 CREATE INDEX users_home_idx ON public.users USING btree (home_tile);
2769 -- Name: way_nodes_node_idx; Type: INDEX; Schema: public; Owner: -
2772 CREATE INDEX way_nodes_node_idx ON public.way_nodes USING btree (node_id);
2776 -- Name: ways_changeset_id_idx; Type: INDEX; Schema: public; Owner: -
2779 CREATE INDEX ways_changeset_id_idx ON public.ways USING btree (changeset_id);
2783 -- Name: ways_timestamp_idx; Type: INDEX; Schema: public; Owner: -
2786 CREATE INDEX ways_timestamp_idx ON public.ways USING btree ("timestamp");
2790 -- Name: changeset_comments changeset_comments_author_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2793 ALTER TABLE ONLY public.changeset_comments
2794 ADD CONSTRAINT changeset_comments_author_id_fkey FOREIGN KEY (author_id) REFERENCES public.users(id);
2798 -- Name: changeset_comments changeset_comments_changeset_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2801 ALTER TABLE ONLY public.changeset_comments
2802 ADD CONSTRAINT changeset_comments_changeset_id_fkey FOREIGN KEY (changeset_id) REFERENCES public.changesets(id);
2806 -- Name: changeset_tags changeset_tags_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2809 ALTER TABLE ONLY public.changeset_tags
2810 ADD CONSTRAINT changeset_tags_id_fkey FOREIGN KEY (changeset_id) REFERENCES public.changesets(id);
2814 -- Name: changesets_subscribers changesets_subscribers_changeset_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2817 ALTER TABLE ONLY public.changesets_subscribers
2818 ADD CONSTRAINT changesets_subscribers_changeset_id_fkey FOREIGN KEY (changeset_id) REFERENCES public.changesets(id);
2822 -- Name: changesets_subscribers changesets_subscribers_subscriber_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2825 ALTER TABLE ONLY public.changesets_subscribers
2826 ADD CONSTRAINT changesets_subscribers_subscriber_id_fkey FOREIGN KEY (subscriber_id) REFERENCES public.users(id);
2830 -- Name: changesets changesets_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2833 ALTER TABLE ONLY public.changesets
2834 ADD CONSTRAINT changesets_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
2838 -- Name: current_node_tags current_node_tags_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2841 ALTER TABLE ONLY public.current_node_tags
2842 ADD CONSTRAINT current_node_tags_id_fkey FOREIGN KEY (node_id) REFERENCES public.current_nodes(id);
2846 -- Name: current_nodes current_nodes_changeset_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2849 ALTER TABLE ONLY public.current_nodes
2850 ADD CONSTRAINT current_nodes_changeset_id_fkey FOREIGN KEY (changeset_id) REFERENCES public.changesets(id);
2854 -- Name: current_relation_members current_relation_members_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2857 ALTER TABLE ONLY public.current_relation_members
2858 ADD CONSTRAINT current_relation_members_id_fkey FOREIGN KEY (relation_id) REFERENCES public.current_relations(id);
2862 -- Name: current_relation_tags current_relation_tags_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2865 ALTER TABLE ONLY public.current_relation_tags
2866 ADD CONSTRAINT current_relation_tags_id_fkey FOREIGN KEY (relation_id) REFERENCES public.current_relations(id);
2870 -- Name: current_relations current_relations_changeset_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2873 ALTER TABLE ONLY public.current_relations
2874 ADD CONSTRAINT current_relations_changeset_id_fkey FOREIGN KEY (changeset_id) REFERENCES public.changesets(id);
2878 -- Name: current_way_nodes current_way_nodes_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2881 ALTER TABLE ONLY public.current_way_nodes
2882 ADD CONSTRAINT current_way_nodes_id_fkey FOREIGN KEY (way_id) REFERENCES public.current_ways(id);
2886 -- Name: current_way_nodes current_way_nodes_node_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2889 ALTER TABLE ONLY public.current_way_nodes
2890 ADD CONSTRAINT current_way_nodes_node_id_fkey FOREIGN KEY (node_id) REFERENCES public.current_nodes(id);
2894 -- Name: current_way_tags current_way_tags_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2897 ALTER TABLE ONLY public.current_way_tags
2898 ADD CONSTRAINT current_way_tags_id_fkey FOREIGN KEY (way_id) REFERENCES public.current_ways(id);
2902 -- Name: current_ways current_ways_changeset_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2905 ALTER TABLE ONLY public.current_ways
2906 ADD CONSTRAINT current_ways_changeset_id_fkey FOREIGN KEY (changeset_id) REFERENCES public.changesets(id);
2910 -- Name: diary_comments diary_comments_diary_entry_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2913 ALTER TABLE ONLY public.diary_comments
2914 ADD CONSTRAINT diary_comments_diary_entry_id_fkey FOREIGN KEY (diary_entry_id) REFERENCES public.diary_entries(id);
2918 -- Name: diary_comments diary_comments_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2921 ALTER TABLE ONLY public.diary_comments
2922 ADD CONSTRAINT diary_comments_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
2926 -- Name: diary_entries diary_entries_language_code_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2929 ALTER TABLE ONLY public.diary_entries
2930 ADD CONSTRAINT diary_entries_language_code_fkey FOREIGN KEY (language_code) REFERENCES public.languages(code);
2934 -- Name: diary_entries diary_entries_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2937 ALTER TABLE ONLY public.diary_entries
2938 ADD CONSTRAINT diary_entries_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
2942 -- Name: diary_entry_subscriptions diary_entry_subscriptions_diary_entry_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2945 ALTER TABLE ONLY public.diary_entry_subscriptions
2946 ADD CONSTRAINT diary_entry_subscriptions_diary_entry_id_fkey FOREIGN KEY (diary_entry_id) REFERENCES public.diary_entries(id);
2950 -- Name: diary_entry_subscriptions diary_entry_subscriptions_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2953 ALTER TABLE ONLY public.diary_entry_subscriptions
2954 ADD CONSTRAINT diary_entry_subscriptions_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
2958 -- Name: oauth_access_grants fk_rails_330c32d8d9; Type: FK CONSTRAINT; Schema: public; Owner: -
2961 ALTER TABLE ONLY public.oauth_access_grants
2962 ADD CONSTRAINT fk_rails_330c32d8d9 FOREIGN KEY (resource_owner_id) REFERENCES public.users(id) NOT VALID;
2966 -- Name: user_mutes fk_rails_591dad3359; Type: FK CONSTRAINT; Schema: public; Owner: -
2969 ALTER TABLE ONLY public.user_mutes
2970 ADD CONSTRAINT fk_rails_591dad3359 FOREIGN KEY (owner_id) REFERENCES public.users(id);
2974 -- Name: oauth_access_tokens fk_rails_732cb83ab7; Type: FK CONSTRAINT; Schema: public; Owner: -
2977 ALTER TABLE ONLY public.oauth_access_tokens
2978 ADD CONSTRAINT fk_rails_732cb83ab7 FOREIGN KEY (application_id) REFERENCES public.oauth_applications(id) NOT VALID;
2982 -- Name: oauth_openid_requests fk_rails_77114b3b09; Type: FK CONSTRAINT; Schema: public; Owner: -
2985 ALTER TABLE ONLY public.oauth_openid_requests
2986 ADD CONSTRAINT fk_rails_77114b3b09 FOREIGN KEY (access_grant_id) REFERENCES public.oauth_access_grants(id) ON DELETE CASCADE;
2990 -- Name: active_storage_variant_records fk_rails_993965df05; Type: FK CONSTRAINT; Schema: public; Owner: -
2993 ALTER TABLE ONLY public.active_storage_variant_records
2994 ADD CONSTRAINT fk_rails_993965df05 FOREIGN KEY (blob_id) REFERENCES public.active_storage_blobs(id);
2998 -- Name: oauth_access_grants fk_rails_b4b53e07b8; Type: FK CONSTRAINT; Schema: public; Owner: -
3001 ALTER TABLE ONLY public.oauth_access_grants
3002 ADD CONSTRAINT fk_rails_b4b53e07b8 FOREIGN KEY (application_id) REFERENCES public.oauth_applications(id) NOT VALID;
3006 -- Name: active_storage_attachments fk_rails_c3b3935057; Type: FK CONSTRAINT; Schema: public; Owner: -
3009 ALTER TABLE ONLY public.active_storage_attachments
3010 ADD CONSTRAINT fk_rails_c3b3935057 FOREIGN KEY (blob_id) REFERENCES public.active_storage_blobs(id);
3014 -- Name: oauth_applications fk_rails_cc886e315a; Type: FK CONSTRAINT; Schema: public; Owner: -
3017 ALTER TABLE ONLY public.oauth_applications
3018 ADD CONSTRAINT fk_rails_cc886e315a FOREIGN KEY (owner_id) REFERENCES public.users(id) NOT VALID;
3022 -- Name: user_mutes fk_rails_e9dd4fb6c3; Type: FK CONSTRAINT; Schema: public; Owner: -
3025 ALTER TABLE ONLY public.user_mutes
3026 ADD CONSTRAINT fk_rails_e9dd4fb6c3 FOREIGN KEY (subject_id) REFERENCES public.users(id);
3030 -- Name: oauth_access_tokens fk_rails_ee63f25419; Type: FK CONSTRAINT; Schema: public; Owner: -
3033 ALTER TABLE ONLY public.oauth_access_tokens
3034 ADD CONSTRAINT fk_rails_ee63f25419 FOREIGN KEY (resource_owner_id) REFERENCES public.users(id) NOT VALID;
3038 -- Name: friends friends_friend_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3041 ALTER TABLE ONLY public.friends
3042 ADD CONSTRAINT friends_friend_user_id_fkey FOREIGN KEY (friend_user_id) REFERENCES public.users(id);
3046 -- Name: friends friends_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3049 ALTER TABLE ONLY public.friends
3050 ADD CONSTRAINT friends_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
3054 -- Name: gps_points gps_points_gpx_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3057 ALTER TABLE ONLY public.gps_points
3058 ADD CONSTRAINT gps_points_gpx_id_fkey FOREIGN KEY (gpx_id) REFERENCES public.gpx_files(id);
3062 -- Name: gpx_file_tags gpx_file_tags_gpx_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3065 ALTER TABLE ONLY public.gpx_file_tags
3066 ADD CONSTRAINT gpx_file_tags_gpx_id_fkey FOREIGN KEY (gpx_id) REFERENCES public.gpx_files(id);
3070 -- Name: gpx_files gpx_files_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3073 ALTER TABLE ONLY public.gpx_files
3074 ADD CONSTRAINT gpx_files_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
3078 -- Name: issue_comments issue_comments_issue_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3081 ALTER TABLE ONLY public.issue_comments
3082 ADD CONSTRAINT issue_comments_issue_id_fkey FOREIGN KEY (issue_id) REFERENCES public.issues(id);
3086 -- Name: issue_comments issue_comments_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3089 ALTER TABLE ONLY public.issue_comments
3090 ADD CONSTRAINT issue_comments_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
3094 -- Name: issues issues_reported_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3097 ALTER TABLE ONLY public.issues
3098 ADD CONSTRAINT issues_reported_user_id_fkey FOREIGN KEY (reported_user_id) REFERENCES public.users(id);
3102 -- Name: issues issues_resolved_by_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3105 ALTER TABLE ONLY public.issues
3106 ADD CONSTRAINT issues_resolved_by_fkey FOREIGN KEY (resolved_by) REFERENCES public.users(id);
3110 -- Name: issues issues_updated_by_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3113 ALTER TABLE ONLY public.issues
3114 ADD CONSTRAINT issues_updated_by_fkey FOREIGN KEY (updated_by) REFERENCES public.users(id);
3118 -- Name: messages messages_from_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3121 ALTER TABLE ONLY public.messages
3122 ADD CONSTRAINT messages_from_user_id_fkey FOREIGN KEY (from_user_id) REFERENCES public.users(id);
3126 -- Name: messages messages_to_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3129 ALTER TABLE ONLY public.messages
3130 ADD CONSTRAINT messages_to_user_id_fkey FOREIGN KEY (to_user_id) REFERENCES public.users(id);
3134 -- Name: node_tags node_tags_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3137 ALTER TABLE ONLY public.node_tags
3138 ADD CONSTRAINT node_tags_id_fkey FOREIGN KEY (node_id, version) REFERENCES public.nodes(node_id, version);
3142 -- Name: nodes nodes_changeset_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3145 ALTER TABLE ONLY public.nodes
3146 ADD CONSTRAINT nodes_changeset_id_fkey FOREIGN KEY (changeset_id) REFERENCES public.changesets(id);
3150 -- Name: nodes nodes_redaction_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3153 ALTER TABLE ONLY public.nodes
3154 ADD CONSTRAINT nodes_redaction_id_fkey FOREIGN KEY (redaction_id) REFERENCES public.redactions(id);
3158 -- Name: note_comments note_comments_author_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3161 ALTER TABLE ONLY public.note_comments
3162 ADD CONSTRAINT note_comments_author_id_fkey FOREIGN KEY (author_id) REFERENCES public.users(id);
3166 -- Name: note_comments note_comments_note_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3169 ALTER TABLE ONLY public.note_comments
3170 ADD CONSTRAINT note_comments_note_id_fkey FOREIGN KEY (note_id) REFERENCES public.notes(id);
3174 -- Name: redactions redactions_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3177 ALTER TABLE ONLY public.redactions
3178 ADD CONSTRAINT redactions_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
3182 -- Name: relation_members relation_members_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3185 ALTER TABLE ONLY public.relation_members
3186 ADD CONSTRAINT relation_members_id_fkey FOREIGN KEY (relation_id, version) REFERENCES public.relations(relation_id, version);
3190 -- Name: relation_tags relation_tags_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3193 ALTER TABLE ONLY public.relation_tags
3194 ADD CONSTRAINT relation_tags_id_fkey FOREIGN KEY (relation_id, version) REFERENCES public.relations(relation_id, version);
3198 -- Name: relations relations_changeset_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3201 ALTER TABLE ONLY public.relations
3202 ADD CONSTRAINT relations_changeset_id_fkey FOREIGN KEY (changeset_id) REFERENCES public.changesets(id);
3206 -- Name: relations relations_redaction_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3209 ALTER TABLE ONLY public.relations
3210 ADD CONSTRAINT relations_redaction_id_fkey FOREIGN KEY (redaction_id) REFERENCES public.redactions(id);
3214 -- Name: reports reports_issue_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3217 ALTER TABLE ONLY public.reports
3218 ADD CONSTRAINT reports_issue_id_fkey FOREIGN KEY (issue_id) REFERENCES public.issues(id);
3222 -- Name: reports reports_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3225 ALTER TABLE ONLY public.reports
3226 ADD CONSTRAINT reports_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
3230 -- Name: user_blocks user_blocks_moderator_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3233 ALTER TABLE ONLY public.user_blocks
3234 ADD CONSTRAINT user_blocks_moderator_id_fkey FOREIGN KEY (creator_id) REFERENCES public.users(id);
3238 -- Name: user_blocks user_blocks_revoker_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3241 ALTER TABLE ONLY public.user_blocks
3242 ADD CONSTRAINT user_blocks_revoker_id_fkey FOREIGN KEY (revoker_id) REFERENCES public.users(id);
3246 -- Name: user_blocks user_blocks_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3249 ALTER TABLE ONLY public.user_blocks
3250 ADD CONSTRAINT user_blocks_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
3254 -- Name: user_preferences user_preferences_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3257 ALTER TABLE ONLY public.user_preferences
3258 ADD CONSTRAINT user_preferences_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
3262 -- Name: user_roles user_roles_granter_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3265 ALTER TABLE ONLY public.user_roles
3266 ADD CONSTRAINT user_roles_granter_id_fkey FOREIGN KEY (granter_id) REFERENCES public.users(id);
3270 -- Name: user_roles user_roles_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3273 ALTER TABLE ONLY public.user_roles
3274 ADD CONSTRAINT user_roles_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
3278 -- Name: way_nodes way_nodes_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3281 ALTER TABLE ONLY public.way_nodes
3282 ADD CONSTRAINT way_nodes_id_fkey FOREIGN KEY (way_id, version) REFERENCES public.ways(way_id, version);
3286 -- Name: way_tags way_tags_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3289 ALTER TABLE ONLY public.way_tags
3290 ADD CONSTRAINT way_tags_id_fkey FOREIGN KEY (way_id, version) REFERENCES public.ways(way_id, version);
3294 -- Name: ways ways_changeset_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3297 ALTER TABLE ONLY public.ways
3298 ADD CONSTRAINT ways_changeset_id_fkey FOREIGN KEY (changeset_id) REFERENCES public.changesets(id);
3302 -- Name: ways ways_redaction_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3305 ALTER TABLE ONLY public.ways
3306 ADD CONSTRAINT ways_redaction_id_fkey FOREIGN KEY (redaction_id) REFERENCES public.redactions(id);
3310 -- PostgreSQL database dump complete
3313 SET search_path TO "$user", public;
3315 INSERT INTO "schema_migrations" (version) VALUES