]> git.openstreetmap.org Git - rails.git/blob - db/structure.sql
Remove structure.sql to force a migration
[rails.git] / db / structure.sql
1 SET statement_timeout = 0;
2 SET lock_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;
11
12 --
13 -- Name: public; Type: SCHEMA; Schema: -; Owner: -
14 --
15
16 -- *not* creating schema, since initdb creates it
17
18
19 --
20 -- Name: btree_gist; Type: EXTENSION; Schema: -; Owner: -
21 --
22
23 CREATE EXTENSION IF NOT EXISTS btree_gist WITH SCHEMA public;
24
25
26 --
27 -- Name: EXTENSION btree_gist; Type: COMMENT; Schema: -; Owner: -
28 --
29
30 COMMENT ON EXTENSION btree_gist IS 'support for indexing common datatypes in GiST';
31
32
33 --
34 -- Name: format_enum; Type: TYPE; Schema: public; Owner: -
35 --
36
37 CREATE TYPE public.format_enum AS ENUM (
38     'html',
39     'markdown',
40     'text'
41 );
42
43
44 --
45 -- Name: gpx_visibility_enum; Type: TYPE; Schema: public; Owner: -
46 --
47
48 CREATE TYPE public.gpx_visibility_enum AS ENUM (
49     'private',
50     'public',
51     'trackable',
52     'identifiable'
53 );
54
55
56 --
57 -- Name: issue_status_enum; Type: TYPE; Schema: public; Owner: -
58 --
59
60 CREATE TYPE public.issue_status_enum AS ENUM (
61     'open',
62     'ignored',
63     'resolved'
64 );
65
66
67 --
68 -- Name: note_event_enum; Type: TYPE; Schema: public; Owner: -
69 --
70
71 CREATE TYPE public.note_event_enum AS ENUM (
72     'opened',
73     'closed',
74     'reopened',
75     'commented',
76     'hidden'
77 );
78
79
80 --
81 -- Name: note_status_enum; Type: TYPE; Schema: public; Owner: -
82 --
83
84 CREATE TYPE public.note_status_enum AS ENUM (
85     'open',
86     'closed',
87     'hidden'
88 );
89
90
91 --
92 -- Name: nwr_enum; Type: TYPE; Schema: public; Owner: -
93 --
94
95 CREATE TYPE public.nwr_enum AS ENUM (
96     'Node',
97     'Way',
98     'Relation'
99 );
100
101
102 --
103 -- Name: user_role_enum; Type: TYPE; Schema: public; Owner: -
104 --
105
106 CREATE TYPE public.user_role_enum AS ENUM (
107     'administrator',
108     'moderator',
109     'importer'
110 );
111
112
113 --
114 -- Name: user_status_enum; Type: TYPE; Schema: public; Owner: -
115 --
116
117 CREATE TYPE public.user_status_enum AS ENUM (
118     'pending',
119     'active',
120     'confirmed',
121     'suspended',
122     'deleted'
123 );
124
125
126 --
127 -- Name: api_rate_limit(bigint); Type: FUNCTION; Schema: public; Owner: -
128 --
129
130 CREATE FUNCTION public.api_rate_limit(user_id bigint) RETURNS integer
131     LANGUAGE plpgsql STABLE
132     AS $$
133     DECLARE
134       min_changes_per_hour int4 := 100;
135       initial_changes_per_hour int4 := 1000;
136       max_changes_per_hour int4 := 100000;
137       days_to_max_changes int4 := 7;
138       importer_changes_per_hour int4 := 1000000;
139       moderator_changes_per_hour int4 := 1000000;
140       roles text[];
141       last_block timestamp without time zone;
142       first_change timestamp without time zone;
143       active_reports int4;
144       time_since_first_change double precision;
145       max_changes double precision;
146       recent_changes int4;
147     BEGIN
148       SELECT ARRAY_AGG(user_roles.role) INTO STRICT roles FROM user_roles WHERE user_roles.user_id = api_rate_limit.user_id;
149
150       IF 'moderator' = ANY(roles) THEN
151         max_changes := moderator_changes_per_hour;
152       ELSIF 'importer' = ANY(roles) THEN
153         max_changes := importer_changes_per_hour;
154       ELSE
155         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;
156
157         IF FOUND THEN
158           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;
159         ELSE
160           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;
161         END IF;
162
163         IF NOT FOUND THEN
164           first_change := CURRENT_TIMESTAMP AT TIME ZONE 'UTC';
165         END IF;
166
167         SELECT COUNT(*) INTO STRICT active_reports
168         FROM issues INNER JOIN reports ON reports.issue_id = issues.id
169         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');
170
171         time_since_first_change := EXTRACT(EPOCH FROM CURRENT_TIMESTAMP AT TIME ZONE 'UTC' - first_change);
172
173         max_changes := max_changes_per_hour * POWER(time_since_first_change, 2) / POWER(days_to_max_changes * 24 * 60 * 60, 2);
174         max_changes := GREATEST(initial_changes_per_hour, LEAST(max_changes_per_hour, FLOOR(max_changes)));
175         max_changes := max_changes / POWER(2, active_reports);
176         max_changes := GREATEST(min_changes_per_hour, LEAST(max_changes_per_hour, max_changes));
177       END IF;
178
179       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;
180
181       RETURN max_changes - recent_changes;
182     END;
183     $$;
184
185
186 --
187 -- Name: api_size_limit(bigint); Type: FUNCTION; Schema: public; Owner: -
188 --
189
190 CREATE FUNCTION public.api_size_limit(user_id bigint) RETURNS bigint
191     LANGUAGE plpgsql STABLE
192     AS $$
193     DECLARE
194       min_size_limit int8 := 10000000;
195       initial_size_limit int8 := 30000000;
196       max_size_limit int8 := 5400000000;
197       days_to_max_size_limit int4 := 28;
198       importer_size_limit int8 := 5400000000;
199       moderator_size_limit int8 := 5400000000;
200       roles text[];
201       last_block timestamp without time zone;
202       first_change timestamp without time zone;
203       active_reports int4;
204       time_since_first_change double precision;
205       size_limit int8;
206     BEGIN
207       SELECT ARRAY_AGG(user_roles.role) INTO STRICT roles FROM user_roles WHERE user_roles.user_id = api_size_limit.user_id;
208
209       IF 'moderator' = ANY(roles) THEN
210         size_limit := moderator_size_limit;
211       ELSIF 'importer' = ANY(roles) THEN
212         size_limit := importer_size_limit;
213       ELSE
214         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;
215
216         IF FOUND THEN
217           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;
218         ELSE
219           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;
220         END IF;
221
222         IF NOT FOUND THEN
223           first_change := CURRENT_TIMESTAMP AT TIME ZONE 'UTC';
224         END IF;
225
226         SELECT COUNT(*) INTO STRICT active_reports
227         FROM issues INNER JOIN reports ON reports.issue_id = issues.id
228         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');
229
230         time_since_first_change := EXTRACT(EPOCH FROM CURRENT_TIMESTAMP AT TIME ZONE 'UTC' - first_change);
231
232         size_limit := max_size_limit * POWER(time_since_first_change, 2) / POWER(days_to_max_size_limit * 24 * 60 * 60, 2);
233         size_limit := GREATEST(initial_size_limit, LEAST(max_size_limit, FLOOR(size_limit)));
234         size_limit := size_limit / POWER(2, active_reports);
235         size_limit := GREATEST(min_size_limit, LEAST(max_size_limit, size_limit));
236       END IF;
237
238       RETURN size_limit;
239     END;
240     $$;
241
242
243 SET default_tablespace = '';
244
245 SET default_table_access_method = heap;
246
247 --
248 -- Name: acls; Type: TABLE; Schema: public; Owner: -
249 --
250
251 CREATE TABLE public.acls (
252     id bigint NOT NULL,
253     address inet,
254     k character varying NOT NULL,
255     v character varying,
256     domain character varying,
257     mx character varying
258 );
259
260
261 --
262 -- Name: acls_id_seq; Type: SEQUENCE; Schema: public; Owner: -
263 --
264
265 CREATE SEQUENCE public.acls_id_seq
266     START WITH 1
267     INCREMENT BY 1
268     NO MINVALUE
269     NO MAXVALUE
270     CACHE 1;
271
272
273 --
274 -- Name: acls_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
275 --
276
277 ALTER SEQUENCE public.acls_id_seq OWNED BY public.acls.id;
278
279
280 --
281 -- Name: active_storage_attachments; Type: TABLE; Schema: public; Owner: -
282 --
283
284 CREATE TABLE public.active_storage_attachments (
285     id bigint NOT NULL,
286     name character varying NOT NULL,
287     record_type character varying NOT NULL,
288     record_id bigint NOT NULL,
289     blob_id bigint NOT NULL,
290     created_at timestamp without time zone NOT NULL
291 );
292
293
294 --
295 -- Name: active_storage_attachments_id_seq; Type: SEQUENCE; Schema: public; Owner: -
296 --
297
298 CREATE SEQUENCE public.active_storage_attachments_id_seq
299     START WITH 1
300     INCREMENT BY 1
301     NO MINVALUE
302     NO MAXVALUE
303     CACHE 1;
304
305
306 --
307 -- Name: active_storage_attachments_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
308 --
309
310 ALTER SEQUENCE public.active_storage_attachments_id_seq OWNED BY public.active_storage_attachments.id;
311
312
313 --
314 -- Name: active_storage_blobs; Type: TABLE; Schema: public; Owner: -
315 --
316
317 CREATE TABLE public.active_storage_blobs (
318     id bigint NOT NULL,
319     key character varying NOT NULL,
320     filename character varying NOT NULL,
321     content_type character varying,
322     metadata text,
323     byte_size bigint NOT NULL,
324     checksum character varying,
325     created_at timestamp without time zone NOT NULL,
326     service_name character varying NOT NULL
327 );
328
329
330 --
331 -- Name: active_storage_blobs_id_seq; Type: SEQUENCE; Schema: public; Owner: -
332 --
333
334 CREATE SEQUENCE public.active_storage_blobs_id_seq
335     START WITH 1
336     INCREMENT BY 1
337     NO MINVALUE
338     NO MAXVALUE
339     CACHE 1;
340
341
342 --
343 -- Name: active_storage_blobs_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
344 --
345
346 ALTER SEQUENCE public.active_storage_blobs_id_seq OWNED BY public.active_storage_blobs.id;
347
348
349 --
350 -- Name: active_storage_variant_records; Type: TABLE; Schema: public; Owner: -
351 --
352
353 CREATE TABLE public.active_storage_variant_records (
354     id bigint NOT NULL,
355     blob_id bigint NOT NULL,
356     variation_digest character varying NOT NULL
357 );
358
359
360 --
361 -- Name: active_storage_variant_records_id_seq; Type: SEQUENCE; Schema: public; Owner: -
362 --
363
364 CREATE SEQUENCE public.active_storage_variant_records_id_seq
365     START WITH 1
366     INCREMENT BY 1
367     NO MINVALUE
368     NO MAXVALUE
369     CACHE 1;
370
371
372 --
373 -- Name: active_storage_variant_records_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
374 --
375
376 ALTER SEQUENCE public.active_storage_variant_records_id_seq OWNED BY public.active_storage_variant_records.id;
377
378
379 --
380 -- Name: ar_internal_metadata; Type: TABLE; Schema: public; Owner: -
381 --
382
383 CREATE TABLE public.ar_internal_metadata (
384     key character varying NOT NULL,
385     value character varying,
386     created_at timestamp(6) without time zone NOT NULL,
387     updated_at timestamp(6) without time zone NOT NULL
388 );
389
390
391 --
392 -- Name: changeset_comments; Type: TABLE; Schema: public; Owner: -
393 --
394
395 CREATE TABLE public.changeset_comments (
396     id integer NOT NULL,
397     changeset_id bigint NOT NULL,
398     author_id bigint NOT NULL,
399     body text NOT NULL,
400     created_at timestamp without time zone NOT NULL,
401     visible boolean NOT NULL
402 );
403
404
405 --
406 -- Name: changeset_comments_id_seq; Type: SEQUENCE; Schema: public; Owner: -
407 --
408
409 CREATE SEQUENCE public.changeset_comments_id_seq
410     AS integer
411     START WITH 1
412     INCREMENT BY 1
413     NO MINVALUE
414     NO MAXVALUE
415     CACHE 1;
416
417
418 --
419 -- Name: changeset_comments_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
420 --
421
422 ALTER SEQUENCE public.changeset_comments_id_seq OWNED BY public.changeset_comments.id;
423
424
425 --
426 -- Name: changeset_tags; Type: TABLE; Schema: public; Owner: -
427 --
428
429 CREATE TABLE public.changeset_tags (
430     changeset_id bigint NOT NULL,
431     k character varying DEFAULT ''::character varying NOT NULL,
432     v character varying DEFAULT ''::character varying NOT NULL
433 );
434
435
436 --
437 -- Name: changesets; Type: TABLE; Schema: public; Owner: -
438 --
439
440 CREATE TABLE public.changesets (
441     id bigint NOT NULL,
442     user_id bigint NOT NULL,
443     created_at timestamp without time zone NOT NULL,
444     min_lat integer,
445     max_lat integer,
446     min_lon integer,
447     max_lon integer,
448     closed_at timestamp without time zone NOT NULL,
449     num_changes integer DEFAULT 0 NOT NULL
450 );
451
452
453 --
454 -- Name: changesets_id_seq; Type: SEQUENCE; Schema: public; Owner: -
455 --
456
457 CREATE SEQUENCE public.changesets_id_seq
458     START WITH 1
459     INCREMENT BY 1
460     NO MINVALUE
461     NO MAXVALUE
462     CACHE 1;
463
464
465 --
466 -- Name: changesets_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
467 --
468
469 ALTER SEQUENCE public.changesets_id_seq OWNED BY public.changesets.id;
470
471
472 --
473 -- Name: changesets_subscribers; Type: TABLE; Schema: public; Owner: -
474 --
475
476 CREATE TABLE public.changesets_subscribers (
477     subscriber_id bigint NOT NULL,
478     changeset_id bigint NOT NULL
479 );
480
481
482 --
483 -- Name: current_node_tags; Type: TABLE; Schema: public; Owner: -
484 --
485
486 CREATE TABLE public.current_node_tags (
487     node_id bigint NOT NULL,
488     k character varying DEFAULT ''::character varying NOT NULL,
489     v character varying DEFAULT ''::character varying NOT NULL
490 );
491
492
493 --
494 -- Name: current_nodes; Type: TABLE; Schema: public; Owner: -
495 --
496
497 CREATE TABLE public.current_nodes (
498     id bigint NOT NULL,
499     latitude integer NOT NULL,
500     longitude integer NOT NULL,
501     changeset_id bigint NOT NULL,
502     visible boolean NOT NULL,
503     "timestamp" timestamp without time zone NOT NULL,
504     tile bigint NOT NULL,
505     version bigint NOT NULL
506 );
507
508
509 --
510 -- Name: current_nodes_id_seq; Type: SEQUENCE; Schema: public; Owner: -
511 --
512
513 CREATE SEQUENCE public.current_nodes_id_seq
514     START WITH 1
515     INCREMENT BY 1
516     NO MINVALUE
517     NO MAXVALUE
518     CACHE 1;
519
520
521 --
522 -- Name: current_nodes_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
523 --
524
525 ALTER SEQUENCE public.current_nodes_id_seq OWNED BY public.current_nodes.id;
526
527
528 --
529 -- Name: current_relation_members; Type: TABLE; Schema: public; Owner: -
530 --
531
532 CREATE TABLE public.current_relation_members (
533     relation_id bigint NOT NULL,
534     member_type public.nwr_enum NOT NULL,
535     member_id bigint NOT NULL,
536     member_role character varying NOT NULL,
537     sequence_id integer DEFAULT 0 NOT NULL
538 );
539
540
541 --
542 -- Name: current_relation_tags; Type: TABLE; Schema: public; Owner: -
543 --
544
545 CREATE TABLE public.current_relation_tags (
546     relation_id bigint NOT NULL,
547     k character varying DEFAULT ''::character varying NOT NULL,
548     v character varying DEFAULT ''::character varying NOT NULL
549 );
550
551
552 --
553 -- Name: current_relations; Type: TABLE; Schema: public; Owner: -
554 --
555
556 CREATE TABLE public.current_relations (
557     id bigint NOT NULL,
558     changeset_id bigint NOT NULL,
559     "timestamp" timestamp without time zone NOT NULL,
560     visible boolean NOT NULL,
561     version bigint NOT NULL
562 );
563
564
565 --
566 -- Name: current_relations_id_seq; Type: SEQUENCE; Schema: public; Owner: -
567 --
568
569 CREATE SEQUENCE public.current_relations_id_seq
570     START WITH 1
571     INCREMENT BY 1
572     NO MINVALUE
573     NO MAXVALUE
574     CACHE 1;
575
576
577 --
578 -- Name: current_relations_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
579 --
580
581 ALTER SEQUENCE public.current_relations_id_seq OWNED BY public.current_relations.id;
582
583
584 --
585 -- Name: current_way_nodes; Type: TABLE; Schema: public; Owner: -
586 --
587
588 CREATE TABLE public.current_way_nodes (
589     way_id bigint NOT NULL,
590     node_id bigint NOT NULL,
591     sequence_id bigint NOT NULL
592 );
593
594
595 --
596 -- Name: current_way_tags; Type: TABLE; Schema: public; Owner: -
597 --
598
599 CREATE TABLE public.current_way_tags (
600     way_id bigint NOT NULL,
601     k character varying DEFAULT ''::character varying NOT NULL,
602     v character varying DEFAULT ''::character varying NOT NULL
603 );
604
605
606 --
607 -- Name: current_ways; Type: TABLE; Schema: public; Owner: -
608 --
609
610 CREATE TABLE public.current_ways (
611     id bigint NOT NULL,
612     changeset_id bigint NOT NULL,
613     "timestamp" timestamp without time zone NOT NULL,
614     visible boolean NOT NULL,
615     version bigint NOT NULL
616 );
617
618
619 --
620 -- Name: current_ways_id_seq; Type: SEQUENCE; Schema: public; Owner: -
621 --
622
623 CREATE SEQUENCE public.current_ways_id_seq
624     START WITH 1
625     INCREMENT BY 1
626     NO MINVALUE
627     NO MAXVALUE
628     CACHE 1;
629
630
631 --
632 -- Name: current_ways_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
633 --
634
635 ALTER SEQUENCE public.current_ways_id_seq OWNED BY public.current_ways.id;
636
637
638 --
639 -- Name: delayed_jobs; Type: TABLE; Schema: public; Owner: -
640 --
641
642 CREATE TABLE public.delayed_jobs (
643     id bigint NOT NULL,
644     priority integer DEFAULT 0 NOT NULL,
645     attempts integer DEFAULT 0 NOT NULL,
646     handler text NOT NULL,
647     last_error text,
648     run_at timestamp without time zone,
649     locked_at timestamp without time zone,
650     failed_at timestamp without time zone,
651     locked_by character varying,
652     queue character varying,
653     created_at timestamp without time zone,
654     updated_at timestamp without time zone
655 );
656
657
658 --
659 -- Name: delayed_jobs_id_seq; Type: SEQUENCE; Schema: public; Owner: -
660 --
661
662 CREATE SEQUENCE public.delayed_jobs_id_seq
663     START WITH 1
664     INCREMENT BY 1
665     NO MINVALUE
666     NO MAXVALUE
667     CACHE 1;
668
669
670 --
671 -- Name: delayed_jobs_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
672 --
673
674 ALTER SEQUENCE public.delayed_jobs_id_seq OWNED BY public.delayed_jobs.id;
675
676
677 --
678 -- Name: diary_comments; Type: TABLE; Schema: public; Owner: -
679 --
680
681 CREATE TABLE public.diary_comments (
682     id bigint NOT NULL,
683     diary_entry_id bigint NOT NULL,
684     user_id bigint NOT NULL,
685     body text NOT NULL,
686     created_at timestamp without time zone NOT NULL,
687     updated_at timestamp without time zone NOT NULL,
688     visible boolean DEFAULT true NOT NULL,
689     body_format public.format_enum DEFAULT 'markdown'::public.format_enum NOT NULL
690 );
691
692
693 --
694 -- Name: diary_comments_id_seq; Type: SEQUENCE; Schema: public; Owner: -
695 --
696
697 CREATE SEQUENCE public.diary_comments_id_seq
698     START WITH 1
699     INCREMENT BY 1
700     NO MINVALUE
701     NO MAXVALUE
702     CACHE 1;
703
704
705 --
706 -- Name: diary_comments_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
707 --
708
709 ALTER SEQUENCE public.diary_comments_id_seq OWNED BY public.diary_comments.id;
710
711
712 --
713 -- Name: diary_entries; Type: TABLE; Schema: public; Owner: -
714 --
715
716 CREATE TABLE public.diary_entries (
717     id bigint NOT NULL,
718     user_id bigint NOT NULL,
719     title character varying NOT NULL,
720     body text NOT NULL,
721     created_at timestamp without time zone NOT NULL,
722     updated_at timestamp without time zone NOT NULL,
723     latitude double precision,
724     longitude double precision,
725     language_code character varying DEFAULT 'en'::character varying NOT NULL,
726     visible boolean DEFAULT true NOT NULL,
727     body_format public.format_enum DEFAULT 'markdown'::public.format_enum NOT NULL
728 );
729
730
731 --
732 -- Name: diary_entries_id_seq; Type: SEQUENCE; Schema: public; Owner: -
733 --
734
735 CREATE SEQUENCE public.diary_entries_id_seq
736     START WITH 1
737     INCREMENT BY 1
738     NO MINVALUE
739     NO MAXVALUE
740     CACHE 1;
741
742
743 --
744 -- Name: diary_entries_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
745 --
746
747 ALTER SEQUENCE public.diary_entries_id_seq OWNED BY public.diary_entries.id;
748
749
750 --
751 -- Name: diary_entry_subscriptions; Type: TABLE; Schema: public; Owner: -
752 --
753
754 CREATE TABLE public.diary_entry_subscriptions (
755     user_id bigint NOT NULL,
756     diary_entry_id bigint NOT NULL
757 );
758
759
760 --
761 -- Name: friends; Type: TABLE; Schema: public; Owner: -
762 --
763
764 CREATE TABLE public.friends (
765     id bigint NOT NULL,
766     user_id bigint NOT NULL,
767     friend_user_id bigint NOT NULL,
768     created_at timestamp without time zone
769 );
770
771
772 --
773 -- Name: friends_id_seq; Type: SEQUENCE; Schema: public; Owner: -
774 --
775
776 CREATE SEQUENCE public.friends_id_seq
777     START WITH 1
778     INCREMENT BY 1
779     NO MINVALUE
780     NO MAXVALUE
781     CACHE 1;
782
783
784 --
785 -- Name: friends_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
786 --
787
788 ALTER SEQUENCE public.friends_id_seq OWNED BY public.friends.id;
789
790
791 --
792 -- Name: gps_points; Type: TABLE; Schema: public; Owner: -
793 --
794
795 CREATE TABLE public.gps_points (
796     altitude double precision,
797     trackid integer NOT NULL,
798     latitude integer NOT NULL,
799     longitude integer NOT NULL,
800     gpx_id bigint NOT NULL,
801     "timestamp" timestamp without time zone,
802     tile bigint
803 );
804
805
806 --
807 -- Name: gpx_file_tags; Type: TABLE; Schema: public; Owner: -
808 --
809
810 CREATE TABLE public.gpx_file_tags (
811     gpx_id bigint NOT NULL,
812     tag character varying NOT NULL,
813     id bigint NOT NULL
814 );
815
816
817 --
818 -- Name: gpx_file_tags_id_seq; Type: SEQUENCE; Schema: public; Owner: -
819 --
820
821 CREATE SEQUENCE public.gpx_file_tags_id_seq
822     START WITH 1
823     INCREMENT BY 1
824     NO MINVALUE
825     NO MAXVALUE
826     CACHE 1;
827
828
829 --
830 -- Name: gpx_file_tags_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
831 --
832
833 ALTER SEQUENCE public.gpx_file_tags_id_seq OWNED BY public.gpx_file_tags.id;
834
835
836 --
837 -- Name: gpx_files; Type: TABLE; Schema: public; Owner: -
838 --
839
840 CREATE TABLE public.gpx_files (
841     id bigint NOT NULL,
842     user_id bigint NOT NULL,
843     visible boolean DEFAULT true NOT NULL,
844     name character varying DEFAULT ''::character varying NOT NULL,
845     size bigint,
846     latitude double precision,
847     longitude double precision,
848     "timestamp" timestamp without time zone NOT NULL,
849     description character varying DEFAULT ''::character varying NOT NULL,
850     inserted boolean NOT NULL,
851     visibility public.gpx_visibility_enum DEFAULT 'public'::public.gpx_visibility_enum NOT NULL
852 );
853
854
855 --
856 -- Name: gpx_files_id_seq; Type: SEQUENCE; Schema: public; Owner: -
857 --
858
859 CREATE SEQUENCE public.gpx_files_id_seq
860     START WITH 1
861     INCREMENT BY 1
862     NO MINVALUE
863     NO MAXVALUE
864     CACHE 1;
865
866
867 --
868 -- Name: gpx_files_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
869 --
870
871 ALTER SEQUENCE public.gpx_files_id_seq OWNED BY public.gpx_files.id;
872
873
874 --
875 -- Name: issue_comments; Type: TABLE; Schema: public; Owner: -
876 --
877
878 CREATE TABLE public.issue_comments (
879     id integer NOT NULL,
880     issue_id integer NOT NULL,
881     user_id integer NOT NULL,
882     body text NOT NULL,
883     created_at timestamp without time zone NOT NULL,
884     updated_at timestamp without time zone NOT NULL
885 );
886
887
888 --
889 -- Name: issue_comments_id_seq; Type: SEQUENCE; Schema: public; Owner: -
890 --
891
892 CREATE SEQUENCE public.issue_comments_id_seq
893     AS integer
894     START WITH 1
895     INCREMENT BY 1
896     NO MINVALUE
897     NO MAXVALUE
898     CACHE 1;
899
900
901 --
902 -- Name: issue_comments_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
903 --
904
905 ALTER SEQUENCE public.issue_comments_id_seq OWNED BY public.issue_comments.id;
906
907
908 --
909 -- Name: issues; Type: TABLE; Schema: public; Owner: -
910 --
911
912 CREATE TABLE public.issues (
913     id integer NOT NULL,
914     reportable_type character varying NOT NULL,
915     reportable_id integer NOT NULL,
916     reported_user_id integer,
917     status public.issue_status_enum DEFAULT 'open'::public.issue_status_enum NOT NULL,
918     assigned_role public.user_role_enum NOT NULL,
919     resolved_at timestamp without time zone,
920     resolved_by integer,
921     updated_by integer,
922     reports_count integer DEFAULT 0,
923     created_at timestamp without time zone NOT NULL,
924     updated_at timestamp without time zone NOT NULL
925 );
926
927
928 --
929 -- Name: issues_id_seq; Type: SEQUENCE; Schema: public; Owner: -
930 --
931
932 CREATE SEQUENCE public.issues_id_seq
933     AS integer
934     START WITH 1
935     INCREMENT BY 1
936     NO MINVALUE
937     NO MAXVALUE
938     CACHE 1;
939
940
941 --
942 -- Name: issues_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
943 --
944
945 ALTER SEQUENCE public.issues_id_seq OWNED BY public.issues.id;
946
947
948 --
949 -- Name: languages; Type: TABLE; Schema: public; Owner: -
950 --
951
952 CREATE TABLE public.languages (
953     code character varying NOT NULL,
954     english_name character varying NOT NULL,
955     native_name character varying
956 );
957
958
959 --
960 -- Name: messages; Type: TABLE; Schema: public; Owner: -
961 --
962
963 CREATE TABLE public.messages (
964     id bigint NOT NULL,
965     from_user_id bigint NOT NULL,
966     title character varying NOT NULL,
967     body text NOT NULL,
968     sent_on timestamp without time zone NOT NULL,
969     message_read boolean DEFAULT false NOT NULL,
970     to_user_id bigint NOT NULL,
971     to_user_visible boolean DEFAULT true NOT NULL,
972     from_user_visible boolean DEFAULT true NOT NULL,
973     body_format public.format_enum DEFAULT 'markdown'::public.format_enum NOT NULL,
974     muted boolean DEFAULT false NOT NULL
975 );
976
977
978 --
979 -- Name: messages_id_seq; Type: SEQUENCE; Schema: public; Owner: -
980 --
981
982 CREATE SEQUENCE public.messages_id_seq
983     START WITH 1
984     INCREMENT BY 1
985     NO MINVALUE
986     NO MAXVALUE
987     CACHE 1;
988
989
990 --
991 -- Name: messages_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
992 --
993
994 ALTER SEQUENCE public.messages_id_seq OWNED BY public.messages.id;
995
996
997 --
998 -- Name: node_tags; Type: TABLE; Schema: public; Owner: -
999 --
1000
1001 CREATE TABLE public.node_tags (
1002     node_id bigint NOT NULL,
1003     version bigint NOT NULL,
1004     k character varying DEFAULT ''::character varying NOT NULL,
1005     v character varying DEFAULT ''::character varying NOT NULL
1006 );
1007
1008
1009 --
1010 -- Name: nodes; Type: TABLE; Schema: public; Owner: -
1011 --
1012
1013 CREATE TABLE public.nodes (
1014     node_id bigint NOT NULL,
1015     latitude integer NOT NULL,
1016     longitude integer NOT NULL,
1017     changeset_id bigint NOT NULL,
1018     visible boolean NOT NULL,
1019     "timestamp" timestamp without time zone NOT NULL,
1020     tile bigint NOT NULL,
1021     version bigint NOT NULL,
1022     redaction_id integer
1023 );
1024
1025
1026 --
1027 -- Name: note_comments; Type: TABLE; Schema: public; Owner: -
1028 --
1029
1030 CREATE TABLE public.note_comments (
1031     id bigint NOT NULL,
1032     note_id bigint NOT NULL,
1033     visible boolean NOT NULL,
1034     created_at timestamp without time zone NOT NULL,
1035     author_ip inet,
1036     author_id bigint,
1037     body text,
1038     event public.note_event_enum
1039 );
1040
1041
1042 --
1043 -- Name: note_comments_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1044 --
1045
1046 CREATE SEQUENCE public.note_comments_id_seq
1047     START WITH 1
1048     INCREMENT BY 1
1049     NO MINVALUE
1050     NO MAXVALUE
1051     CACHE 1;
1052
1053
1054 --
1055 -- Name: note_comments_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1056 --
1057
1058 ALTER SEQUENCE public.note_comments_id_seq OWNED BY public.note_comments.id;
1059
1060
1061 --
1062 -- Name: note_subscriptions; Type: TABLE; Schema: public; Owner: -
1063 --
1064
1065 CREATE TABLE public.note_subscriptions (
1066     user_id bigint NOT NULL,
1067     note_id bigint NOT NULL
1068 );
1069
1070
1071 --
1072 -- Name: notes; Type: TABLE; Schema: public; Owner: -
1073 --
1074
1075 CREATE TABLE public.notes (
1076     id bigint NOT NULL,
1077     latitude integer NOT NULL,
1078     longitude integer NOT NULL,
1079     tile bigint NOT NULL,
1080     updated_at timestamp without time zone NOT NULL,
1081     created_at timestamp without time zone NOT NULL,
1082     status public.note_status_enum NOT NULL,
1083     closed_at timestamp without time zone,
1084     description text DEFAULT ''::text NOT NULL,
1085     user_id bigint,
1086     user_ip inet
1087 );
1088
1089
1090 --
1091 -- Name: notes_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1092 --
1093
1094 CREATE SEQUENCE public.notes_id_seq
1095     START WITH 1
1096     INCREMENT BY 1
1097     NO MINVALUE
1098     NO MAXVALUE
1099     CACHE 1;
1100
1101
1102 --
1103 -- Name: notes_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1104 --
1105
1106 ALTER SEQUENCE public.notes_id_seq OWNED BY public.notes.id;
1107
1108
1109 --
1110 -- Name: oauth_access_grants; Type: TABLE; Schema: public; Owner: -
1111 --
1112
1113 CREATE TABLE public.oauth_access_grants (
1114     id bigint NOT NULL,
1115     resource_owner_id bigint NOT NULL,
1116     application_id bigint NOT NULL,
1117     token character varying NOT NULL,
1118     expires_in integer NOT NULL,
1119     redirect_uri text NOT NULL,
1120     created_at timestamp without time zone NOT NULL,
1121     revoked_at timestamp without time zone,
1122     scopes character varying DEFAULT ''::character varying NOT NULL,
1123     code_challenge character varying,
1124     code_challenge_method character varying
1125 );
1126
1127
1128 --
1129 -- Name: oauth_access_grants_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1130 --
1131
1132 CREATE SEQUENCE public.oauth_access_grants_id_seq
1133     START WITH 1
1134     INCREMENT BY 1
1135     NO MINVALUE
1136     NO MAXVALUE
1137     CACHE 1;
1138
1139
1140 --
1141 -- Name: oauth_access_grants_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1142 --
1143
1144 ALTER SEQUENCE public.oauth_access_grants_id_seq OWNED BY public.oauth_access_grants.id;
1145
1146
1147 --
1148 -- Name: oauth_access_tokens; Type: TABLE; Schema: public; Owner: -
1149 --
1150
1151 CREATE TABLE public.oauth_access_tokens (
1152     id bigint NOT NULL,
1153     resource_owner_id bigint,
1154     application_id bigint NOT NULL,
1155     token character varying NOT NULL,
1156     refresh_token character varying,
1157     expires_in integer,
1158     revoked_at timestamp without time zone,
1159     created_at timestamp without time zone NOT NULL,
1160     scopes character varying,
1161     previous_refresh_token character varying DEFAULT ''::character varying NOT NULL
1162 );
1163
1164
1165 --
1166 -- Name: oauth_access_tokens_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1167 --
1168
1169 CREATE SEQUENCE public.oauth_access_tokens_id_seq
1170     START WITH 1
1171     INCREMENT BY 1
1172     NO MINVALUE
1173     NO MAXVALUE
1174     CACHE 1;
1175
1176
1177 --
1178 -- Name: oauth_access_tokens_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1179 --
1180
1181 ALTER SEQUENCE public.oauth_access_tokens_id_seq OWNED BY public.oauth_access_tokens.id;
1182
1183
1184 --
1185 -- Name: oauth_applications; Type: TABLE; Schema: public; Owner: -
1186 --
1187
1188 CREATE TABLE public.oauth_applications (
1189     id bigint NOT NULL,
1190     owner_type character varying NOT NULL,
1191     owner_id bigint NOT NULL,
1192     name character varying NOT NULL,
1193     uid character varying NOT NULL,
1194     secret character varying NOT NULL,
1195     redirect_uri text NOT NULL,
1196     scopes character varying DEFAULT ''::character varying NOT NULL,
1197     confidential boolean DEFAULT true NOT NULL,
1198     created_at timestamp(6) without time zone NOT NULL,
1199     updated_at timestamp(6) without time zone NOT NULL
1200 );
1201
1202
1203 --
1204 -- Name: oauth_applications_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1205 --
1206
1207 CREATE SEQUENCE public.oauth_applications_id_seq
1208     START WITH 1
1209     INCREMENT BY 1
1210     NO MINVALUE
1211     NO MAXVALUE
1212     CACHE 1;
1213
1214
1215 --
1216 -- Name: oauth_applications_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1217 --
1218
1219 ALTER SEQUENCE public.oauth_applications_id_seq OWNED BY public.oauth_applications.id;
1220
1221
1222 --
1223 -- Name: oauth_openid_requests; Type: TABLE; Schema: public; Owner: -
1224 --
1225
1226 CREATE TABLE public.oauth_openid_requests (
1227     id bigint NOT NULL,
1228     access_grant_id bigint NOT NULL,
1229     nonce character varying NOT NULL
1230 );
1231
1232
1233 --
1234 -- Name: oauth_openid_requests_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1235 --
1236
1237 CREATE SEQUENCE public.oauth_openid_requests_id_seq
1238     START WITH 1
1239     INCREMENT BY 1
1240     NO MINVALUE
1241     NO MAXVALUE
1242     CACHE 1;
1243
1244
1245 --
1246 -- Name: oauth_openid_requests_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1247 --
1248
1249 ALTER SEQUENCE public.oauth_openid_requests_id_seq OWNED BY public.oauth_openid_requests.id;
1250
1251
1252 --
1253 -- Name: redactions; Type: TABLE; Schema: public; Owner: -
1254 --
1255
1256 CREATE TABLE public.redactions (
1257     id integer NOT NULL,
1258     title character varying NOT NULL,
1259     description text NOT NULL,
1260     created_at timestamp without time zone,
1261     updated_at timestamp without time zone,
1262     user_id bigint NOT NULL,
1263     description_format public.format_enum DEFAULT 'markdown'::public.format_enum NOT NULL
1264 );
1265
1266
1267 --
1268 -- Name: redactions_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1269 --
1270
1271 CREATE SEQUENCE public.redactions_id_seq
1272     AS integer
1273     START WITH 1
1274     INCREMENT BY 1
1275     NO MINVALUE
1276     NO MAXVALUE
1277     CACHE 1;
1278
1279
1280 --
1281 -- Name: redactions_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1282 --
1283
1284 ALTER SEQUENCE public.redactions_id_seq OWNED BY public.redactions.id;
1285
1286
1287 --
1288 -- Name: relation_members; Type: TABLE; Schema: public; Owner: -
1289 --
1290
1291 CREATE TABLE public.relation_members (
1292     relation_id bigint NOT NULL,
1293     member_type public.nwr_enum NOT NULL,
1294     member_id bigint NOT NULL,
1295     member_role character varying NOT NULL,
1296     version bigint DEFAULT 0 NOT NULL,
1297     sequence_id integer DEFAULT 0 NOT NULL
1298 );
1299
1300
1301 --
1302 -- Name: relation_tags; Type: TABLE; Schema: public; Owner: -
1303 --
1304
1305 CREATE TABLE public.relation_tags (
1306     relation_id bigint NOT NULL,
1307     k character varying DEFAULT ''::character varying NOT NULL,
1308     v character varying DEFAULT ''::character varying NOT NULL,
1309     version bigint NOT NULL
1310 );
1311
1312
1313 --
1314 -- Name: relations; Type: TABLE; Schema: public; Owner: -
1315 --
1316
1317 CREATE TABLE public.relations (
1318     relation_id bigint NOT NULL,
1319     changeset_id bigint NOT NULL,
1320     "timestamp" timestamp without time zone NOT NULL,
1321     version bigint NOT NULL,
1322     visible boolean DEFAULT true NOT NULL,
1323     redaction_id integer
1324 );
1325
1326
1327 --
1328 -- Name: reports; Type: TABLE; Schema: public; Owner: -
1329 --
1330
1331 CREATE TABLE public.reports (
1332     id integer NOT NULL,
1333     issue_id integer NOT NULL,
1334     user_id integer NOT NULL,
1335     details text NOT NULL,
1336     category character varying NOT NULL,
1337     created_at timestamp without time zone NOT NULL,
1338     updated_at timestamp without time zone NOT NULL
1339 );
1340
1341
1342 --
1343 -- Name: reports_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1344 --
1345
1346 CREATE SEQUENCE public.reports_id_seq
1347     AS integer
1348     START WITH 1
1349     INCREMENT BY 1
1350     NO MINVALUE
1351     NO MAXVALUE
1352     CACHE 1;
1353
1354
1355 --
1356 -- Name: reports_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1357 --
1358
1359 ALTER SEQUENCE public.reports_id_seq OWNED BY public.reports.id;
1360
1361
1362 --
1363 -- Name: schema_migrations; Type: TABLE; Schema: public; Owner: -
1364 --
1365
1366 CREATE TABLE public.schema_migrations (
1367     version character varying NOT NULL
1368 );
1369
1370
1371 --
1372 -- Name: social_links; Type: TABLE; Schema: public; Owner: -
1373 --
1374
1375 CREATE TABLE public.social_links (
1376     id bigint NOT NULL,
1377     user_id bigint NOT NULL,
1378     url character varying,
1379     created_at timestamp(6) without time zone NOT NULL,
1380     updated_at timestamp(6) without time zone NOT NULL
1381 );
1382
1383
1384 --
1385 -- Name: social_links_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1386 --
1387
1388 CREATE SEQUENCE public.social_links_id_seq
1389     START WITH 1
1390     INCREMENT BY 1
1391     NO MINVALUE
1392     NO MAXVALUE
1393     CACHE 1;
1394
1395
1396 --
1397 -- Name: social_links_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1398 --
1399
1400 ALTER SEQUENCE public.social_links_id_seq OWNED BY public.social_links.id;
1401
1402
1403 --
1404 -- Name: user_blocks; Type: TABLE; Schema: public; Owner: -
1405 --
1406
1407 CREATE TABLE public.user_blocks (
1408     id integer NOT NULL,
1409     user_id bigint NOT NULL,
1410     creator_id bigint NOT NULL,
1411     reason text NOT NULL,
1412     ends_at timestamp without time zone NOT NULL,
1413     needs_view boolean DEFAULT false NOT NULL,
1414     revoker_id bigint,
1415     created_at timestamp without time zone,
1416     updated_at timestamp without time zone,
1417     reason_format public.format_enum DEFAULT 'markdown'::public.format_enum NOT NULL,
1418     deactivates_at timestamp without time zone
1419 );
1420
1421
1422 --
1423 -- Name: user_blocks_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1424 --
1425
1426 CREATE SEQUENCE public.user_blocks_id_seq
1427     AS integer
1428     START WITH 1
1429     INCREMENT BY 1
1430     NO MINVALUE
1431     NO MAXVALUE
1432     CACHE 1;
1433
1434
1435 --
1436 -- Name: user_blocks_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1437 --
1438
1439 ALTER SEQUENCE public.user_blocks_id_seq OWNED BY public.user_blocks.id;
1440
1441
1442 --
1443 -- Name: user_mutes; Type: TABLE; Schema: public; Owner: -
1444 --
1445
1446 CREATE TABLE public.user_mutes (
1447     id bigint NOT NULL,
1448     owner_id bigint NOT NULL,
1449     subject_id bigint NOT NULL,
1450     created_at timestamp(6) without time zone NOT NULL,
1451     updated_at timestamp(6) without time zone NOT NULL
1452 );
1453
1454
1455 --
1456 -- Name: user_mutes_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1457 --
1458
1459 CREATE SEQUENCE public.user_mutes_id_seq
1460     START WITH 1
1461     INCREMENT BY 1
1462     NO MINVALUE
1463     NO MAXVALUE
1464     CACHE 1;
1465
1466
1467 --
1468 -- Name: user_mutes_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1469 --
1470
1471 ALTER SEQUENCE public.user_mutes_id_seq OWNED BY public.user_mutes.id;
1472
1473
1474 --
1475 -- Name: user_preferences; Type: TABLE; Schema: public; Owner: -
1476 --
1477
1478 CREATE TABLE public.user_preferences (
1479     user_id bigint NOT NULL,
1480     k character varying NOT NULL,
1481     v character varying NOT NULL
1482 );
1483
1484
1485 --
1486 -- Name: user_roles; Type: TABLE; Schema: public; Owner: -
1487 --
1488
1489 CREATE TABLE public.user_roles (
1490     id integer NOT NULL,
1491     user_id bigint NOT NULL,
1492     created_at timestamp without time zone,
1493     updated_at timestamp without time zone,
1494     role public.user_role_enum NOT NULL,
1495     granter_id bigint NOT NULL
1496 );
1497
1498
1499 --
1500 -- Name: user_roles_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1501 --
1502
1503 CREATE SEQUENCE public.user_roles_id_seq
1504     AS integer
1505     START WITH 1
1506     INCREMENT BY 1
1507     NO MINVALUE
1508     NO MAXVALUE
1509     CACHE 1;
1510
1511
1512 --
1513 -- Name: user_roles_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1514 --
1515
1516 ALTER SEQUENCE public.user_roles_id_seq OWNED BY public.user_roles.id;
1517
1518
1519 --
1520 -- Name: users; Type: TABLE; Schema: public; Owner: -
1521 --
1522
1523 CREATE TABLE public.users (
1524     email character varying NOT NULL,
1525     id bigint NOT NULL,
1526     pass_crypt character varying NOT NULL,
1527     creation_time timestamp without time zone NOT NULL,
1528     display_name character varying DEFAULT ''::character varying NOT NULL,
1529     data_public boolean DEFAULT false NOT NULL,
1530     description text DEFAULT ''::text NOT NULL,
1531     home_lat double precision,
1532     home_lon double precision,
1533     home_zoom smallint DEFAULT 3,
1534     pass_salt character varying,
1535     email_valid boolean DEFAULT false NOT NULL,
1536     new_email character varying,
1537     languages character varying,
1538     status public.user_status_enum DEFAULT 'pending'::public.user_status_enum NOT NULL,
1539     terms_agreed timestamp without time zone,
1540     consider_pd boolean DEFAULT false NOT NULL,
1541     auth_uid character varying,
1542     preferred_editor character varying,
1543     terms_seen boolean DEFAULT false NOT NULL,
1544     description_format public.format_enum DEFAULT 'markdown'::public.format_enum NOT NULL,
1545     changesets_count integer DEFAULT 0 NOT NULL,
1546     traces_count integer DEFAULT 0 NOT NULL,
1547     diary_entries_count integer DEFAULT 0 NOT NULL,
1548     image_use_gravatar boolean DEFAULT false NOT NULL,
1549     auth_provider character varying,
1550     home_tile bigint,
1551     tou_agreed timestamp without time zone,
1552     diary_comments_count integer DEFAULT 0,
1553     note_comments_count integer DEFAULT 0,
1554     creation_address inet
1555 );
1556
1557
1558 --
1559 -- Name: users_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1560 --
1561
1562 CREATE SEQUENCE public.users_id_seq
1563     START WITH 1
1564     INCREMENT BY 1
1565     NO MINVALUE
1566     NO MAXVALUE
1567     CACHE 1;
1568
1569
1570 --
1571 -- Name: users_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1572 --
1573
1574 ALTER SEQUENCE public.users_id_seq OWNED BY public.users.id;
1575
1576
1577 --
1578 -- Name: way_nodes; Type: TABLE; Schema: public; Owner: -
1579 --
1580
1581 CREATE TABLE public.way_nodes (
1582     way_id bigint NOT NULL,
1583     node_id bigint NOT NULL,
1584     version bigint NOT NULL,
1585     sequence_id bigint NOT NULL
1586 );
1587
1588
1589 --
1590 -- Name: way_tags; Type: TABLE; Schema: public; Owner: -
1591 --
1592
1593 CREATE TABLE public.way_tags (
1594     way_id bigint NOT NULL,
1595     k character varying NOT NULL,
1596     v character varying NOT NULL,
1597     version bigint NOT NULL
1598 );
1599
1600
1601 --
1602 -- Name: ways; Type: TABLE; Schema: public; Owner: -
1603 --
1604
1605 CREATE TABLE public.ways (
1606     way_id bigint NOT NULL,
1607     changeset_id bigint NOT NULL,
1608     "timestamp" timestamp without time zone NOT NULL,
1609     version bigint NOT NULL,
1610     visible boolean DEFAULT true NOT NULL,
1611     redaction_id integer
1612 );
1613
1614
1615 --
1616 -- Name: acls id; Type: DEFAULT; Schema: public; Owner: -
1617 --
1618
1619 ALTER TABLE ONLY public.acls ALTER COLUMN id SET DEFAULT nextval('public.acls_id_seq'::regclass);
1620
1621
1622 --
1623 -- Name: active_storage_attachments id; Type: DEFAULT; Schema: public; Owner: -
1624 --
1625
1626 ALTER TABLE ONLY public.active_storage_attachments ALTER COLUMN id SET DEFAULT nextval('public.active_storage_attachments_id_seq'::regclass);
1627
1628
1629 --
1630 -- Name: active_storage_blobs id; Type: DEFAULT; Schema: public; Owner: -
1631 --
1632
1633 ALTER TABLE ONLY public.active_storage_blobs ALTER COLUMN id SET DEFAULT nextval('public.active_storage_blobs_id_seq'::regclass);
1634
1635
1636 --
1637 -- Name: active_storage_variant_records id; Type: DEFAULT; Schema: public; Owner: -
1638 --
1639
1640 ALTER TABLE ONLY public.active_storage_variant_records ALTER COLUMN id SET DEFAULT nextval('public.active_storage_variant_records_id_seq'::regclass);
1641
1642
1643 --
1644 -- Name: changeset_comments id; Type: DEFAULT; Schema: public; Owner: -
1645 --
1646
1647 ALTER TABLE ONLY public.changeset_comments ALTER COLUMN id SET DEFAULT nextval('public.changeset_comments_id_seq'::regclass);
1648
1649
1650 --
1651 -- Name: changesets id; Type: DEFAULT; Schema: public; Owner: -
1652 --
1653
1654 ALTER TABLE ONLY public.changesets ALTER COLUMN id SET DEFAULT nextval('public.changesets_id_seq'::regclass);
1655
1656
1657 --
1658 -- Name: current_nodes id; Type: DEFAULT; Schema: public; Owner: -
1659 --
1660
1661 ALTER TABLE ONLY public.current_nodes ALTER COLUMN id SET DEFAULT nextval('public.current_nodes_id_seq'::regclass);
1662
1663
1664 --
1665 -- Name: current_relations id; Type: DEFAULT; Schema: public; Owner: -
1666 --
1667
1668 ALTER TABLE ONLY public.current_relations ALTER COLUMN id SET DEFAULT nextval('public.current_relations_id_seq'::regclass);
1669
1670
1671 --
1672 -- Name: current_ways id; Type: DEFAULT; Schema: public; Owner: -
1673 --
1674
1675 ALTER TABLE ONLY public.current_ways ALTER COLUMN id SET DEFAULT nextval('public.current_ways_id_seq'::regclass);
1676
1677
1678 --
1679 -- Name: delayed_jobs id; Type: DEFAULT; Schema: public; Owner: -
1680 --
1681
1682 ALTER TABLE ONLY public.delayed_jobs ALTER COLUMN id SET DEFAULT nextval('public.delayed_jobs_id_seq'::regclass);
1683
1684
1685 --
1686 -- Name: diary_comments id; Type: DEFAULT; Schema: public; Owner: -
1687 --
1688
1689 ALTER TABLE ONLY public.diary_comments ALTER COLUMN id SET DEFAULT nextval('public.diary_comments_id_seq'::regclass);
1690
1691
1692 --
1693 -- Name: diary_entries id; Type: DEFAULT; Schema: public; Owner: -
1694 --
1695
1696 ALTER TABLE ONLY public.diary_entries ALTER COLUMN id SET DEFAULT nextval('public.diary_entries_id_seq'::regclass);
1697
1698
1699 --
1700 -- Name: friends id; Type: DEFAULT; Schema: public; Owner: -
1701 --
1702
1703 ALTER TABLE ONLY public.friends ALTER COLUMN id SET DEFAULT nextval('public.friends_id_seq'::regclass);
1704
1705
1706 --
1707 -- Name: gpx_file_tags id; Type: DEFAULT; Schema: public; Owner: -
1708 --
1709
1710 ALTER TABLE ONLY public.gpx_file_tags ALTER COLUMN id SET DEFAULT nextval('public.gpx_file_tags_id_seq'::regclass);
1711
1712
1713 --
1714 -- Name: gpx_files id; Type: DEFAULT; Schema: public; Owner: -
1715 --
1716
1717 ALTER TABLE ONLY public.gpx_files ALTER COLUMN id SET DEFAULT nextval('public.gpx_files_id_seq'::regclass);
1718
1719
1720 --
1721 -- Name: issue_comments id; Type: DEFAULT; Schema: public; Owner: -
1722 --
1723
1724 ALTER TABLE ONLY public.issue_comments ALTER COLUMN id SET DEFAULT nextval('public.issue_comments_id_seq'::regclass);
1725
1726
1727 --
1728 -- Name: issues id; Type: DEFAULT; Schema: public; Owner: -
1729 --
1730
1731 ALTER TABLE ONLY public.issues ALTER COLUMN id SET DEFAULT nextval('public.issues_id_seq'::regclass);
1732
1733
1734 --
1735 -- Name: messages id; Type: DEFAULT; Schema: public; Owner: -
1736 --
1737
1738 ALTER TABLE ONLY public.messages ALTER COLUMN id SET DEFAULT nextval('public.messages_id_seq'::regclass);
1739
1740
1741 --
1742 -- Name: note_comments id; Type: DEFAULT; Schema: public; Owner: -
1743 --
1744
1745 ALTER TABLE ONLY public.note_comments ALTER COLUMN id SET DEFAULT nextval('public.note_comments_id_seq'::regclass);
1746
1747
1748 --
1749 -- Name: notes id; Type: DEFAULT; Schema: public; Owner: -
1750 --
1751
1752 ALTER TABLE ONLY public.notes ALTER COLUMN id SET DEFAULT nextval('public.notes_id_seq'::regclass);
1753
1754
1755 --
1756 -- Name: oauth_access_grants id; Type: DEFAULT; Schema: public; Owner: -
1757 --
1758
1759 ALTER TABLE ONLY public.oauth_access_grants ALTER COLUMN id SET DEFAULT nextval('public.oauth_access_grants_id_seq'::regclass);
1760
1761
1762 --
1763 -- Name: oauth_access_tokens id; Type: DEFAULT; Schema: public; Owner: -
1764 --
1765
1766 ALTER TABLE ONLY public.oauth_access_tokens ALTER COLUMN id SET DEFAULT nextval('public.oauth_access_tokens_id_seq'::regclass);
1767
1768
1769 --
1770 -- Name: oauth_applications id; Type: DEFAULT; Schema: public; Owner: -
1771 --
1772
1773 ALTER TABLE ONLY public.oauth_applications ALTER COLUMN id SET DEFAULT nextval('public.oauth_applications_id_seq'::regclass);
1774
1775
1776 --
1777 -- Name: oauth_openid_requests id; Type: DEFAULT; Schema: public; Owner: -
1778 --
1779
1780 ALTER TABLE ONLY public.oauth_openid_requests ALTER COLUMN id SET DEFAULT nextval('public.oauth_openid_requests_id_seq'::regclass);
1781
1782
1783 --
1784 -- Name: redactions id; Type: DEFAULT; Schema: public; Owner: -
1785 --
1786
1787 ALTER TABLE ONLY public.redactions ALTER COLUMN id SET DEFAULT nextval('public.redactions_id_seq'::regclass);
1788
1789
1790 --
1791 -- Name: reports id; Type: DEFAULT; Schema: public; Owner: -
1792 --
1793
1794 ALTER TABLE ONLY public.reports ALTER COLUMN id SET DEFAULT nextval('public.reports_id_seq'::regclass);
1795
1796
1797 --
1798 -- Name: social_links id; Type: DEFAULT; Schema: public; Owner: -
1799 --
1800
1801 ALTER TABLE ONLY public.social_links ALTER COLUMN id SET DEFAULT nextval('public.social_links_id_seq'::regclass);
1802
1803
1804 --
1805 -- Name: user_blocks id; Type: DEFAULT; Schema: public; Owner: -
1806 --
1807
1808 ALTER TABLE ONLY public.user_blocks ALTER COLUMN id SET DEFAULT nextval('public.user_blocks_id_seq'::regclass);
1809
1810
1811 --
1812 -- Name: user_mutes id; Type: DEFAULT; Schema: public; Owner: -
1813 --
1814
1815 ALTER TABLE ONLY public.user_mutes ALTER COLUMN id SET DEFAULT nextval('public.user_mutes_id_seq'::regclass);
1816
1817
1818 --
1819 -- Name: user_roles id; Type: DEFAULT; Schema: public; Owner: -
1820 --
1821
1822 ALTER TABLE ONLY public.user_roles ALTER COLUMN id SET DEFAULT nextval('public.user_roles_id_seq'::regclass);
1823
1824
1825 --
1826 -- Name: users id; Type: DEFAULT; Schema: public; Owner: -
1827 --
1828
1829 ALTER TABLE ONLY public.users ALTER COLUMN id SET DEFAULT nextval('public.users_id_seq'::regclass);
1830
1831
1832 --
1833 -- Name: acls acls_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1834 --
1835
1836 ALTER TABLE ONLY public.acls
1837     ADD CONSTRAINT acls_pkey PRIMARY KEY (id);
1838
1839
1840 --
1841 -- Name: active_storage_attachments active_storage_attachments_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1842 --
1843
1844 ALTER TABLE ONLY public.active_storage_attachments
1845     ADD CONSTRAINT active_storage_attachments_pkey PRIMARY KEY (id);
1846
1847
1848 --
1849 -- Name: active_storage_blobs active_storage_blobs_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1850 --
1851
1852 ALTER TABLE ONLY public.active_storage_blobs
1853     ADD CONSTRAINT active_storage_blobs_pkey PRIMARY KEY (id);
1854
1855
1856 --
1857 -- Name: active_storage_variant_records active_storage_variant_records_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1858 --
1859
1860 ALTER TABLE ONLY public.active_storage_variant_records
1861     ADD CONSTRAINT active_storage_variant_records_pkey PRIMARY KEY (id);
1862
1863
1864 --
1865 -- Name: ar_internal_metadata ar_internal_metadata_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1866 --
1867
1868 ALTER TABLE ONLY public.ar_internal_metadata
1869     ADD CONSTRAINT ar_internal_metadata_pkey PRIMARY KEY (key);
1870
1871
1872 --
1873 -- Name: changeset_comments changeset_comments_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1874 --
1875
1876 ALTER TABLE ONLY public.changeset_comments
1877     ADD CONSTRAINT changeset_comments_pkey PRIMARY KEY (id);
1878
1879
1880 --
1881 -- Name: changeset_tags changeset_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1882 --
1883
1884 ALTER TABLE ONLY public.changeset_tags
1885     ADD CONSTRAINT changeset_tags_pkey PRIMARY KEY (changeset_id, k);
1886
1887
1888 --
1889 -- Name: changesets changesets_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1890 --
1891
1892 ALTER TABLE ONLY public.changesets
1893     ADD CONSTRAINT changesets_pkey PRIMARY KEY (id);
1894
1895
1896 --
1897 -- Name: current_node_tags current_node_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1898 --
1899
1900 ALTER TABLE ONLY public.current_node_tags
1901     ADD CONSTRAINT current_node_tags_pkey PRIMARY KEY (node_id, k);
1902
1903
1904 --
1905 -- Name: current_nodes current_nodes_pkey1; Type: CONSTRAINT; Schema: public; Owner: -
1906 --
1907
1908 ALTER TABLE ONLY public.current_nodes
1909     ADD CONSTRAINT current_nodes_pkey1 PRIMARY KEY (id);
1910
1911
1912 --
1913 -- Name: current_relation_members current_relation_members_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1914 --
1915
1916 ALTER TABLE ONLY public.current_relation_members
1917     ADD CONSTRAINT current_relation_members_pkey PRIMARY KEY (relation_id, sequence_id);
1918
1919
1920 --
1921 -- Name: current_relation_tags current_relation_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1922 --
1923
1924 ALTER TABLE ONLY public.current_relation_tags
1925     ADD CONSTRAINT current_relation_tags_pkey PRIMARY KEY (relation_id, k);
1926
1927
1928 --
1929 -- Name: current_relations current_relations_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1930 --
1931
1932 ALTER TABLE ONLY public.current_relations
1933     ADD CONSTRAINT current_relations_pkey PRIMARY KEY (id);
1934
1935
1936 --
1937 -- Name: current_way_nodes current_way_nodes_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1938 --
1939
1940 ALTER TABLE ONLY public.current_way_nodes
1941     ADD CONSTRAINT current_way_nodes_pkey PRIMARY KEY (way_id, sequence_id);
1942
1943
1944 --
1945 -- Name: current_way_tags current_way_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1946 --
1947
1948 ALTER TABLE ONLY public.current_way_tags
1949     ADD CONSTRAINT current_way_tags_pkey PRIMARY KEY (way_id, k);
1950
1951
1952 --
1953 -- Name: current_ways current_ways_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1954 --
1955
1956 ALTER TABLE ONLY public.current_ways
1957     ADD CONSTRAINT current_ways_pkey PRIMARY KEY (id);
1958
1959
1960 --
1961 -- Name: delayed_jobs delayed_jobs_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1962 --
1963
1964 ALTER TABLE ONLY public.delayed_jobs
1965     ADD CONSTRAINT delayed_jobs_pkey PRIMARY KEY (id);
1966
1967
1968 --
1969 -- Name: diary_comments diary_comments_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1970 --
1971
1972 ALTER TABLE ONLY public.diary_comments
1973     ADD CONSTRAINT diary_comments_pkey PRIMARY KEY (id);
1974
1975
1976 --
1977 -- Name: diary_entries diary_entries_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1978 --
1979
1980 ALTER TABLE ONLY public.diary_entries
1981     ADD CONSTRAINT diary_entries_pkey PRIMARY KEY (id);
1982
1983
1984 --
1985 -- Name: diary_entry_subscriptions diary_entry_subscriptions_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1986 --
1987
1988 ALTER TABLE ONLY public.diary_entry_subscriptions
1989     ADD CONSTRAINT diary_entry_subscriptions_pkey PRIMARY KEY (user_id, diary_entry_id);
1990
1991
1992 --
1993 -- Name: friends friends_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1994 --
1995
1996 ALTER TABLE ONLY public.friends
1997     ADD CONSTRAINT friends_pkey PRIMARY KEY (id);
1998
1999
2000 --
2001 -- Name: gpx_file_tags gpx_file_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2002 --
2003
2004 ALTER TABLE ONLY public.gpx_file_tags
2005     ADD CONSTRAINT gpx_file_tags_pkey PRIMARY KEY (id);
2006
2007
2008 --
2009 -- Name: gpx_files gpx_files_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2010 --
2011
2012 ALTER TABLE ONLY public.gpx_files
2013     ADD CONSTRAINT gpx_files_pkey PRIMARY KEY (id);
2014
2015
2016 --
2017 -- Name: issue_comments issue_comments_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2018 --
2019
2020 ALTER TABLE ONLY public.issue_comments
2021     ADD CONSTRAINT issue_comments_pkey PRIMARY KEY (id);
2022
2023
2024 --
2025 -- Name: issues issues_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2026 --
2027
2028 ALTER TABLE ONLY public.issues
2029     ADD CONSTRAINT issues_pkey PRIMARY KEY (id);
2030
2031
2032 --
2033 -- Name: languages languages_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2034 --
2035
2036 ALTER TABLE ONLY public.languages
2037     ADD CONSTRAINT languages_pkey PRIMARY KEY (code);
2038
2039
2040 --
2041 -- Name: messages messages_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2042 --
2043
2044 ALTER TABLE ONLY public.messages
2045     ADD CONSTRAINT messages_pkey PRIMARY KEY (id);
2046
2047
2048 --
2049 -- Name: node_tags node_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2050 --
2051
2052 ALTER TABLE ONLY public.node_tags
2053     ADD CONSTRAINT node_tags_pkey PRIMARY KEY (node_id, version, k);
2054
2055
2056 --
2057 -- Name: nodes nodes_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2058 --
2059
2060 ALTER TABLE ONLY public.nodes
2061     ADD CONSTRAINT nodes_pkey PRIMARY KEY (node_id, version);
2062
2063
2064 --
2065 -- Name: note_comments note_comments_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2066 --
2067
2068 ALTER TABLE ONLY public.note_comments
2069     ADD CONSTRAINT note_comments_pkey PRIMARY KEY (id);
2070
2071
2072 --
2073 -- Name: note_subscriptions note_subscriptions_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2074 --
2075
2076 ALTER TABLE ONLY public.note_subscriptions
2077     ADD CONSTRAINT note_subscriptions_pkey PRIMARY KEY (user_id, note_id);
2078
2079
2080 --
2081 -- Name: notes notes_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2082 --
2083
2084 ALTER TABLE ONLY public.notes
2085     ADD CONSTRAINT notes_pkey PRIMARY KEY (id);
2086
2087
2088 --
2089 -- Name: oauth_access_grants oauth_access_grants_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2090 --
2091
2092 ALTER TABLE ONLY public.oauth_access_grants
2093     ADD CONSTRAINT oauth_access_grants_pkey PRIMARY KEY (id);
2094
2095
2096 --
2097 -- Name: oauth_access_tokens oauth_access_tokens_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2098 --
2099
2100 ALTER TABLE ONLY public.oauth_access_tokens
2101     ADD CONSTRAINT oauth_access_tokens_pkey PRIMARY KEY (id);
2102
2103
2104 --
2105 -- Name: oauth_applications oauth_applications_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2106 --
2107
2108 ALTER TABLE ONLY public.oauth_applications
2109     ADD CONSTRAINT oauth_applications_pkey PRIMARY KEY (id);
2110
2111
2112 --
2113 -- Name: oauth_openid_requests oauth_openid_requests_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2114 --
2115
2116 ALTER TABLE ONLY public.oauth_openid_requests
2117     ADD CONSTRAINT oauth_openid_requests_pkey PRIMARY KEY (id);
2118
2119
2120 --
2121 -- Name: redactions redactions_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2122 --
2123
2124 ALTER TABLE ONLY public.redactions
2125     ADD CONSTRAINT redactions_pkey PRIMARY KEY (id);
2126
2127
2128 --
2129 -- Name: relation_members relation_members_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2130 --
2131
2132 ALTER TABLE ONLY public.relation_members
2133     ADD CONSTRAINT relation_members_pkey PRIMARY KEY (relation_id, version, sequence_id);
2134
2135
2136 --
2137 -- Name: relation_tags relation_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2138 --
2139
2140 ALTER TABLE ONLY public.relation_tags
2141     ADD CONSTRAINT relation_tags_pkey PRIMARY KEY (relation_id, version, k);
2142
2143
2144 --
2145 -- Name: relations relations_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2146 --
2147
2148 ALTER TABLE ONLY public.relations
2149     ADD CONSTRAINT relations_pkey PRIMARY KEY (relation_id, version);
2150
2151
2152 --
2153 -- Name: reports reports_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2154 --
2155
2156 ALTER TABLE ONLY public.reports
2157     ADD CONSTRAINT reports_pkey PRIMARY KEY (id);
2158
2159
2160 --
2161 -- Name: schema_migrations schema_migrations_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2162 --
2163
2164 ALTER TABLE ONLY public.schema_migrations
2165     ADD CONSTRAINT schema_migrations_pkey PRIMARY KEY (version);
2166
2167
2168 --
2169 -- Name: social_links social_links_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2170 --
2171
2172 ALTER TABLE ONLY public.social_links
2173     ADD CONSTRAINT social_links_pkey PRIMARY KEY (id);
2174
2175
2176 --
2177 -- Name: user_blocks user_blocks_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2178 --
2179
2180 ALTER TABLE ONLY public.user_blocks
2181     ADD CONSTRAINT user_blocks_pkey PRIMARY KEY (id);
2182
2183
2184 --
2185 -- Name: user_mutes user_mutes_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2186 --
2187
2188 ALTER TABLE ONLY public.user_mutes
2189     ADD CONSTRAINT user_mutes_pkey PRIMARY KEY (id);
2190
2191
2192 --
2193 -- Name: user_preferences user_preferences_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2194 --
2195
2196 ALTER TABLE ONLY public.user_preferences
2197     ADD CONSTRAINT user_preferences_pkey PRIMARY KEY (user_id, k);
2198
2199
2200 --
2201 -- Name: user_roles user_roles_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2202 --
2203
2204 ALTER TABLE ONLY public.user_roles
2205     ADD CONSTRAINT user_roles_pkey PRIMARY KEY (id);
2206
2207
2208 --
2209 -- Name: users users_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2210 --
2211
2212 ALTER TABLE ONLY public.users
2213     ADD CONSTRAINT users_pkey PRIMARY KEY (id);
2214
2215
2216 --
2217 -- Name: way_nodes way_nodes_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2218 --
2219
2220 ALTER TABLE ONLY public.way_nodes
2221     ADD CONSTRAINT way_nodes_pkey PRIMARY KEY (way_id, version, sequence_id);
2222
2223
2224 --
2225 -- Name: way_tags way_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2226 --
2227
2228 ALTER TABLE ONLY public.way_tags
2229     ADD CONSTRAINT way_tags_pkey PRIMARY KEY (way_id, version, k);
2230
2231
2232 --
2233 -- Name: ways ways_pkey; Type: CONSTRAINT; Schema: public; Owner: -
2234 --
2235
2236 ALTER TABLE ONLY public.ways
2237     ADD CONSTRAINT ways_pkey PRIMARY KEY (way_id, version);
2238
2239
2240 --
2241 -- Name: acls_k_idx; Type: INDEX; Schema: public; Owner: -
2242 --
2243
2244 CREATE INDEX acls_k_idx ON public.acls USING btree (k);
2245
2246
2247 --
2248 -- Name: changesets_bbox_idx; Type: INDEX; Schema: public; Owner: -
2249 --
2250
2251 CREATE INDEX changesets_bbox_idx ON public.changesets USING gist (min_lat, max_lat, min_lon, max_lon);
2252
2253
2254 --
2255 -- Name: changesets_closed_at_idx; Type: INDEX; Schema: public; Owner: -
2256 --
2257
2258 CREATE INDEX changesets_closed_at_idx ON public.changesets USING btree (closed_at);
2259
2260
2261 --
2262 -- Name: changesets_created_at_idx; Type: INDEX; Schema: public; Owner: -
2263 --
2264
2265 CREATE INDEX changesets_created_at_idx ON public.changesets USING btree (created_at);
2266
2267
2268 --
2269 -- Name: changesets_user_id_created_at_idx; Type: INDEX; Schema: public; Owner: -
2270 --
2271
2272 CREATE INDEX changesets_user_id_created_at_idx ON public.changesets USING btree (user_id, created_at);
2273
2274
2275 --
2276 -- Name: changesets_user_id_id_idx; Type: INDEX; Schema: public; Owner: -
2277 --
2278
2279 CREATE INDEX changesets_user_id_id_idx ON public.changesets USING btree (user_id, id);
2280
2281
2282 --
2283 -- Name: current_nodes_tile_idx; Type: INDEX; Schema: public; Owner: -
2284 --
2285
2286 CREATE INDEX current_nodes_tile_idx ON public.current_nodes USING btree (tile);
2287
2288
2289 --
2290 -- Name: current_nodes_timestamp_idx; Type: INDEX; Schema: public; Owner: -
2291 --
2292
2293 CREATE INDEX current_nodes_timestamp_idx ON public.current_nodes USING btree ("timestamp");
2294
2295
2296 --
2297 -- Name: current_relation_members_member_idx; Type: INDEX; Schema: public; Owner: -
2298 --
2299
2300 CREATE INDEX current_relation_members_member_idx ON public.current_relation_members USING btree (member_type, member_id);
2301
2302
2303 --
2304 -- Name: current_relations_timestamp_idx; Type: INDEX; Schema: public; Owner: -
2305 --
2306
2307 CREATE INDEX current_relations_timestamp_idx ON public.current_relations USING btree ("timestamp");
2308
2309
2310 --
2311 -- Name: current_way_nodes_node_idx; Type: INDEX; Schema: public; Owner: -
2312 --
2313
2314 CREATE INDEX current_way_nodes_node_idx ON public.current_way_nodes USING btree (node_id);
2315
2316
2317 --
2318 -- Name: current_ways_timestamp_idx; Type: INDEX; Schema: public; Owner: -
2319 --
2320
2321 CREATE INDEX current_ways_timestamp_idx ON public.current_ways USING btree ("timestamp");
2322
2323
2324 --
2325 -- Name: delayed_jobs_priority; Type: INDEX; Schema: public; Owner: -
2326 --
2327
2328 CREATE INDEX delayed_jobs_priority ON public.delayed_jobs USING btree (priority, run_at);
2329
2330
2331 --
2332 -- Name: diary_comment_user_id_created_at_index; Type: INDEX; Schema: public; Owner: -
2333 --
2334
2335 CREATE INDEX diary_comment_user_id_created_at_index ON public.diary_comments USING btree (user_id, created_at);
2336
2337
2338 --
2339 -- Name: diary_comments_entry_id_idx; Type: INDEX; Schema: public; Owner: -
2340 --
2341
2342 CREATE UNIQUE INDEX diary_comments_entry_id_idx ON public.diary_comments USING btree (diary_entry_id, id);
2343
2344
2345 --
2346 -- Name: diary_entry_created_at_index; Type: INDEX; Schema: public; Owner: -
2347 --
2348
2349 CREATE INDEX diary_entry_created_at_index ON public.diary_entries USING btree (created_at);
2350
2351
2352 --
2353 -- Name: diary_entry_language_code_created_at_index; Type: INDEX; Schema: public; Owner: -
2354 --
2355
2356 CREATE INDEX diary_entry_language_code_created_at_index ON public.diary_entries USING btree (language_code, created_at);
2357
2358
2359 --
2360 -- Name: diary_entry_user_id_created_at_index; Type: INDEX; Schema: public; Owner: -
2361 --
2362
2363 CREATE INDEX diary_entry_user_id_created_at_index ON public.diary_entries USING btree (user_id, created_at);
2364
2365
2366 --
2367 -- Name: gpx_file_tags_gpxid_idx; Type: INDEX; Schema: public; Owner: -
2368 --
2369
2370 CREATE INDEX gpx_file_tags_gpxid_idx ON public.gpx_file_tags USING btree (gpx_id);
2371
2372
2373 --
2374 -- Name: gpx_file_tags_tag_idx; Type: INDEX; Schema: public; Owner: -
2375 --
2376
2377 CREATE INDEX gpx_file_tags_tag_idx ON public.gpx_file_tags USING btree (tag);
2378
2379
2380 --
2381 -- Name: gpx_files_timestamp_idx; Type: INDEX; Schema: public; Owner: -
2382 --
2383
2384 CREATE INDEX gpx_files_timestamp_idx ON public.gpx_files USING btree ("timestamp");
2385
2386
2387 --
2388 -- Name: gpx_files_user_id_idx; Type: INDEX; Schema: public; Owner: -
2389 --
2390
2391 CREATE INDEX gpx_files_user_id_idx ON public.gpx_files USING btree (user_id);
2392
2393
2394 --
2395 -- Name: gpx_files_visible_visibility_idx; Type: INDEX; Schema: public; Owner: -
2396 --
2397
2398 CREATE INDEX gpx_files_visible_visibility_idx ON public.gpx_files USING btree (visible, visibility);
2399
2400
2401 --
2402 -- Name: index_acls_on_address; Type: INDEX; Schema: public; Owner: -
2403 --
2404
2405 CREATE INDEX index_acls_on_address ON public.acls USING gist (address inet_ops);
2406
2407
2408 --
2409 -- Name: index_acls_on_domain; Type: INDEX; Schema: public; Owner: -
2410 --
2411
2412 CREATE INDEX index_acls_on_domain ON public.acls USING btree (domain);
2413
2414
2415 --
2416 -- Name: index_acls_on_mx; Type: INDEX; Schema: public; Owner: -
2417 --
2418
2419 CREATE INDEX index_acls_on_mx ON public.acls USING btree (mx);
2420
2421
2422 --
2423 -- Name: index_active_storage_attachments_on_blob_id; Type: INDEX; Schema: public; Owner: -
2424 --
2425
2426 CREATE INDEX index_active_storage_attachments_on_blob_id ON public.active_storage_attachments USING btree (blob_id);
2427
2428
2429 --
2430 -- Name: index_active_storage_attachments_uniqueness; Type: INDEX; Schema: public; Owner: -
2431 --
2432
2433 CREATE UNIQUE INDEX index_active_storage_attachments_uniqueness ON public.active_storage_attachments USING btree (record_type, record_id, name, blob_id);
2434
2435
2436 --
2437 -- Name: index_active_storage_blobs_on_key; Type: INDEX; Schema: public; Owner: -
2438 --
2439
2440 CREATE UNIQUE INDEX index_active_storage_blobs_on_key ON public.active_storage_blobs USING btree (key);
2441
2442
2443 --
2444 -- Name: index_active_storage_variant_records_uniqueness; Type: INDEX; Schema: public; Owner: -
2445 --
2446
2447 CREATE UNIQUE INDEX index_active_storage_variant_records_uniqueness ON public.active_storage_variant_records USING btree (blob_id, variation_digest);
2448
2449
2450 --
2451 -- Name: index_changeset_comments_on_author_id_and_created_at; Type: INDEX; Schema: public; Owner: -
2452 --
2453
2454 CREATE INDEX index_changeset_comments_on_author_id_and_created_at ON public.changeset_comments USING btree (author_id, created_at);
2455
2456
2457 --
2458 -- Name: index_changeset_comments_on_author_id_and_id; Type: INDEX; Schema: public; Owner: -
2459 --
2460
2461 CREATE INDEX index_changeset_comments_on_author_id_and_id ON public.changeset_comments USING btree (author_id, id);
2462
2463
2464 --
2465 -- Name: index_changeset_comments_on_changeset_id_and_created_at; Type: INDEX; Schema: public; Owner: -
2466 --
2467
2468 CREATE INDEX index_changeset_comments_on_changeset_id_and_created_at ON public.changeset_comments USING btree (changeset_id, created_at);
2469
2470
2471 --
2472 -- Name: index_changeset_comments_on_created_at; Type: INDEX; Schema: public; Owner: -
2473 --
2474
2475 CREATE INDEX index_changeset_comments_on_created_at ON public.changeset_comments USING btree (created_at);
2476
2477
2478 --
2479 -- Name: index_changesets_on_user_id_and_closed_at; Type: INDEX; Schema: public; Owner: -
2480 --
2481
2482 CREATE INDEX index_changesets_on_user_id_and_closed_at ON public.changesets USING btree (user_id, closed_at);
2483
2484
2485 --
2486 -- Name: index_changesets_subscribers_on_changeset_id; Type: INDEX; Schema: public; Owner: -
2487 --
2488
2489 CREATE INDEX index_changesets_subscribers_on_changeset_id ON public.changesets_subscribers USING btree (changeset_id);
2490
2491
2492 --
2493 -- Name: index_changesets_subscribers_on_subscriber_id_and_changeset_id; Type: INDEX; Schema: public; Owner: -
2494 --
2495
2496 CREATE UNIQUE INDEX index_changesets_subscribers_on_subscriber_id_and_changeset_id ON public.changesets_subscribers USING btree (subscriber_id, changeset_id);
2497
2498
2499 --
2500 -- Name: index_diary_comments_on_user_id_and_id; Type: INDEX; Schema: public; Owner: -
2501 --
2502
2503 CREATE INDEX index_diary_comments_on_user_id_and_id ON public.diary_comments USING btree (user_id, id);
2504
2505
2506 --
2507 -- Name: index_diary_entry_subscriptions_on_diary_entry_id; Type: INDEX; Schema: public; Owner: -
2508 --
2509
2510 CREATE INDEX index_diary_entry_subscriptions_on_diary_entry_id ON public.diary_entry_subscriptions USING btree (diary_entry_id);
2511
2512
2513 --
2514 -- Name: index_friends_on_user_id_and_created_at; Type: INDEX; Schema: public; Owner: -
2515 --
2516
2517 CREATE INDEX index_friends_on_user_id_and_created_at ON public.friends USING btree (user_id, created_at);
2518
2519
2520 --
2521 -- Name: index_gpx_files_on_user_id_and_id; Type: INDEX; Schema: public; Owner: -
2522 --
2523
2524 CREATE INDEX index_gpx_files_on_user_id_and_id ON public.gpx_files USING btree (user_id, id);
2525
2526
2527 --
2528 -- Name: index_issue_comments_on_issue_id; Type: INDEX; Schema: public; Owner: -
2529 --
2530
2531 CREATE INDEX index_issue_comments_on_issue_id ON public.issue_comments USING btree (issue_id);
2532
2533
2534 --
2535 -- Name: index_issue_comments_on_user_id; Type: INDEX; Schema: public; Owner: -
2536 --
2537
2538 CREATE INDEX index_issue_comments_on_user_id ON public.issue_comments USING btree (user_id);
2539
2540
2541 --
2542 -- Name: index_issues_on_assigned_role; Type: INDEX; Schema: public; Owner: -
2543 --
2544
2545 CREATE INDEX index_issues_on_assigned_role ON public.issues USING btree (assigned_role);
2546
2547
2548 --
2549 -- Name: index_issues_on_reportable_type_and_reportable_id; Type: INDEX; Schema: public; Owner: -
2550 --
2551
2552 CREATE INDEX index_issues_on_reportable_type_and_reportable_id ON public.issues USING btree (reportable_type, reportable_id);
2553
2554
2555 --
2556 -- Name: index_issues_on_reported_user_id; Type: INDEX; Schema: public; Owner: -
2557 --
2558
2559 CREATE INDEX index_issues_on_reported_user_id ON public.issues USING btree (reported_user_id);
2560
2561
2562 --
2563 -- Name: index_issues_on_status; Type: INDEX; Schema: public; Owner: -
2564 --
2565
2566 CREATE INDEX index_issues_on_status ON public.issues USING btree (status);
2567
2568
2569 --
2570 -- Name: index_issues_on_updated_by; Type: INDEX; Schema: public; Owner: -
2571 --
2572
2573 CREATE INDEX index_issues_on_updated_by ON public.issues USING btree (updated_by);
2574
2575
2576 --
2577 -- Name: index_note_comments_on_author_id_and_created_at; Type: INDEX; Schema: public; Owner: -
2578 --
2579
2580 CREATE INDEX index_note_comments_on_author_id_and_created_at ON public.note_comments USING btree (author_id, created_at);
2581
2582
2583 --
2584 -- Name: index_note_comments_on_body; Type: INDEX; Schema: public; Owner: -
2585 --
2586
2587 CREATE INDEX index_note_comments_on_body ON public.note_comments USING gin (to_tsvector('english'::regconfig, body));
2588
2589
2590 --
2591 -- Name: index_note_comments_on_created_at; Type: INDEX; Schema: public; Owner: -
2592 --
2593
2594 CREATE INDEX index_note_comments_on_created_at ON public.note_comments USING btree (created_at);
2595
2596
2597 --
2598 -- Name: index_note_subscriptions_on_note_id; Type: INDEX; Schema: public; Owner: -
2599 --
2600
2601 CREATE INDEX index_note_subscriptions_on_note_id ON public.note_subscriptions USING btree (note_id);
2602
2603
2604 --
2605 -- Name: index_notes_on_description; Type: INDEX; Schema: public; Owner: -
2606 --
2607
2608 CREATE INDEX index_notes_on_description ON public.notes USING gin (to_tsvector('english'::regconfig, description));
2609
2610
2611 --
2612 -- Name: index_notes_on_user_id_and_created_at; Type: INDEX; Schema: public; Owner: -
2613 --
2614
2615 CREATE INDEX index_notes_on_user_id_and_created_at ON public.notes USING btree (user_id, created_at) WHERE (user_id IS NOT NULL);
2616
2617
2618 --
2619 -- Name: index_oauth_access_grants_on_application_id; Type: INDEX; Schema: public; Owner: -
2620 --
2621
2622 CREATE INDEX index_oauth_access_grants_on_application_id ON public.oauth_access_grants USING btree (application_id);
2623
2624
2625 --
2626 -- Name: index_oauth_access_grants_on_resource_owner_id; Type: INDEX; Schema: public; Owner: -
2627 --
2628
2629 CREATE INDEX index_oauth_access_grants_on_resource_owner_id ON public.oauth_access_grants USING btree (resource_owner_id);
2630
2631
2632 --
2633 -- Name: index_oauth_access_grants_on_token; Type: INDEX; Schema: public; Owner: -
2634 --
2635
2636 CREATE UNIQUE INDEX index_oauth_access_grants_on_token ON public.oauth_access_grants USING btree (token);
2637
2638
2639 --
2640 -- Name: index_oauth_access_tokens_on_application_id; Type: INDEX; Schema: public; Owner: -
2641 --
2642
2643 CREATE INDEX index_oauth_access_tokens_on_application_id ON public.oauth_access_tokens USING btree (application_id);
2644
2645
2646 --
2647 -- Name: index_oauth_access_tokens_on_refresh_token; Type: INDEX; Schema: public; Owner: -
2648 --
2649
2650 CREATE UNIQUE INDEX index_oauth_access_tokens_on_refresh_token ON public.oauth_access_tokens USING btree (refresh_token);
2651
2652
2653 --
2654 -- Name: index_oauth_access_tokens_on_resource_owner_id; Type: INDEX; Schema: public; Owner: -
2655 --
2656
2657 CREATE INDEX index_oauth_access_tokens_on_resource_owner_id ON public.oauth_access_tokens USING btree (resource_owner_id);
2658
2659
2660 --
2661 -- Name: index_oauth_access_tokens_on_token; Type: INDEX; Schema: public; Owner: -
2662 --
2663
2664 CREATE UNIQUE INDEX index_oauth_access_tokens_on_token ON public.oauth_access_tokens USING btree (token);
2665
2666
2667 --
2668 -- Name: index_oauth_applications_on_owner_type_and_owner_id; Type: INDEX; Schema: public; Owner: -
2669 --
2670
2671 CREATE INDEX index_oauth_applications_on_owner_type_and_owner_id ON public.oauth_applications USING btree (owner_type, owner_id);
2672
2673
2674 --
2675 -- Name: index_oauth_applications_on_uid; Type: INDEX; Schema: public; Owner: -
2676 --
2677
2678 CREATE UNIQUE INDEX index_oauth_applications_on_uid ON public.oauth_applications USING btree (uid);
2679
2680
2681 --
2682 -- Name: index_oauth_openid_requests_on_access_grant_id; Type: INDEX; Schema: public; Owner: -
2683 --
2684
2685 CREATE INDEX index_oauth_openid_requests_on_access_grant_id ON public.oauth_openid_requests USING btree (access_grant_id);
2686
2687
2688 --
2689 -- Name: index_reports_on_issue_id; Type: INDEX; Schema: public; Owner: -
2690 --
2691
2692 CREATE INDEX index_reports_on_issue_id ON public.reports USING btree (issue_id);
2693
2694
2695 --
2696 -- Name: index_reports_on_user_id; Type: INDEX; Schema: public; Owner: -
2697 --
2698
2699 CREATE INDEX index_reports_on_user_id ON public.reports USING btree (user_id);
2700
2701
2702 --
2703 -- Name: index_social_links_on_user_id; Type: INDEX; Schema: public; Owner: -
2704 --
2705
2706 CREATE INDEX index_social_links_on_user_id ON public.social_links USING btree (user_id);
2707
2708
2709 --
2710 -- Name: index_user_blocks_on_creator_id_and_id; Type: INDEX; Schema: public; Owner: -
2711 --
2712
2713 CREATE INDEX index_user_blocks_on_creator_id_and_id ON public.user_blocks USING btree (creator_id, id);
2714
2715
2716 --
2717 -- Name: index_user_blocks_on_user_id; Type: INDEX; Schema: public; Owner: -
2718 --
2719
2720 CREATE INDEX index_user_blocks_on_user_id ON public.user_blocks USING btree (user_id);
2721
2722
2723 --
2724 -- Name: index_user_mutes_on_owner_id_and_subject_id; Type: INDEX; Schema: public; Owner: -
2725 --
2726
2727 CREATE UNIQUE INDEX index_user_mutes_on_owner_id_and_subject_id ON public.user_mutes USING btree (owner_id, subject_id);
2728
2729
2730 --
2731 -- Name: index_users_on_creation_address; Type: INDEX; Schema: public; Owner: -
2732 --
2733
2734 CREATE INDEX index_users_on_creation_address ON public.users USING gist (creation_address inet_ops);
2735
2736
2737 --
2738 -- Name: messages_from_user_id_idx; Type: INDEX; Schema: public; Owner: -
2739 --
2740
2741 CREATE INDEX messages_from_user_id_idx ON public.messages USING btree (from_user_id);
2742
2743
2744 --
2745 -- Name: messages_to_user_id_idx; Type: INDEX; Schema: public; Owner: -
2746 --
2747
2748 CREATE INDEX messages_to_user_id_idx ON public.messages USING btree (to_user_id);
2749
2750
2751 --
2752 -- Name: nodes_changeset_id_idx; Type: INDEX; Schema: public; Owner: -
2753 --
2754
2755 CREATE INDEX nodes_changeset_id_idx ON public.nodes USING btree (changeset_id);
2756
2757
2758 --
2759 -- Name: nodes_tile_idx; Type: INDEX; Schema: public; Owner: -
2760 --
2761
2762 CREATE INDEX nodes_tile_idx ON public.nodes USING btree (tile);
2763
2764
2765 --
2766 -- Name: nodes_timestamp_idx; Type: INDEX; Schema: public; Owner: -
2767 --
2768
2769 CREATE INDEX nodes_timestamp_idx ON public.nodes USING btree ("timestamp");
2770
2771
2772 --
2773 -- Name: note_comments_note_id_idx; Type: INDEX; Schema: public; Owner: -
2774 --
2775
2776 CREATE INDEX note_comments_note_id_idx ON public.note_comments USING btree (note_id);
2777
2778
2779 --
2780 -- Name: notes_created_at_idx; Type: INDEX; Schema: public; Owner: -
2781 --
2782
2783 CREATE INDEX notes_created_at_idx ON public.notes USING btree (created_at);
2784
2785
2786 --
2787 -- Name: notes_tile_status_idx; Type: INDEX; Schema: public; Owner: -
2788 --
2789
2790 CREATE INDEX notes_tile_status_idx ON public.notes USING btree (tile, status);
2791
2792
2793 --
2794 -- Name: notes_updated_at_idx; Type: INDEX; Schema: public; Owner: -
2795 --
2796
2797 CREATE INDEX notes_updated_at_idx ON public.notes USING btree (updated_at);
2798
2799
2800 --
2801 -- Name: points_gpxid_idx; Type: INDEX; Schema: public; Owner: -
2802 --
2803
2804 CREATE INDEX points_gpxid_idx ON public.gps_points USING btree (gpx_id);
2805
2806
2807 --
2808 -- Name: points_tile_idx; Type: INDEX; Schema: public; Owner: -
2809 --
2810
2811 CREATE INDEX points_tile_idx ON public.gps_points USING btree (tile);
2812
2813
2814 --
2815 -- Name: relation_members_member_idx; Type: INDEX; Schema: public; Owner: -
2816 --
2817
2818 CREATE INDEX relation_members_member_idx ON public.relation_members USING btree (member_type, member_id);
2819
2820
2821 --
2822 -- Name: relations_changeset_id_idx; Type: INDEX; Schema: public; Owner: -
2823 --
2824
2825 CREATE INDEX relations_changeset_id_idx ON public.relations USING btree (changeset_id);
2826
2827
2828 --
2829 -- Name: relations_timestamp_idx; Type: INDEX; Schema: public; Owner: -
2830 --
2831
2832 CREATE INDEX relations_timestamp_idx ON public.relations USING btree ("timestamp");
2833
2834
2835 --
2836 -- Name: user_id_idx; Type: INDEX; Schema: public; Owner: -
2837 --
2838
2839 CREATE INDEX user_id_idx ON public.friends USING btree (friend_user_id);
2840
2841
2842 --
2843 -- Name: user_roles_id_role_unique; Type: INDEX; Schema: public; Owner: -
2844 --
2845
2846 CREATE UNIQUE INDEX user_roles_id_role_unique ON public.user_roles USING btree (user_id, role);
2847
2848
2849 --
2850 -- Name: users_auth_idx; Type: INDEX; Schema: public; Owner: -
2851 --
2852
2853 CREATE UNIQUE INDEX users_auth_idx ON public.users USING btree (auth_provider, auth_uid);
2854
2855
2856 --
2857 -- Name: users_display_name_canonical_idx; Type: INDEX; Schema: public; Owner: -
2858 --
2859
2860 CREATE INDEX users_display_name_canonical_idx ON public.users USING btree (lower(NORMALIZE(display_name, NFKC)));
2861
2862
2863 --
2864 -- Name: users_display_name_idx; Type: INDEX; Schema: public; Owner: -
2865 --
2866
2867 CREATE UNIQUE INDEX users_display_name_idx ON public.users USING btree (display_name);
2868
2869
2870 --
2871 -- Name: users_email_idx; Type: INDEX; Schema: public; Owner: -
2872 --
2873
2874 CREATE UNIQUE INDEX users_email_idx ON public.users USING btree (email);
2875
2876
2877 --
2878 -- Name: users_email_lower_idx; Type: INDEX; Schema: public; Owner: -
2879 --
2880
2881 CREATE INDEX users_email_lower_idx ON public.users USING btree (lower((email)::text));
2882
2883
2884 --
2885 -- Name: users_home_idx; Type: INDEX; Schema: public; Owner: -
2886 --
2887
2888 CREATE INDEX users_home_idx ON public.users USING btree (home_tile);
2889
2890
2891 --
2892 -- Name: way_nodes_node_idx; Type: INDEX; Schema: public; Owner: -
2893 --
2894
2895 CREATE INDEX way_nodes_node_idx ON public.way_nodes USING btree (node_id);
2896
2897
2898 --
2899 -- Name: ways_changeset_id_idx; Type: INDEX; Schema: public; Owner: -
2900 --
2901
2902 CREATE INDEX ways_changeset_id_idx ON public.ways USING btree (changeset_id);
2903
2904
2905 --
2906 -- Name: ways_timestamp_idx; Type: INDEX; Schema: public; Owner: -
2907 --
2908
2909 CREATE INDEX ways_timestamp_idx ON public.ways USING btree ("timestamp");
2910
2911
2912 --
2913 -- Name: changeset_comments changeset_comments_author_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2914 --
2915
2916 ALTER TABLE ONLY public.changeset_comments
2917     ADD CONSTRAINT changeset_comments_author_id_fkey FOREIGN KEY (author_id) REFERENCES public.users(id);
2918
2919
2920 --
2921 -- Name: changeset_comments changeset_comments_changeset_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2922 --
2923
2924 ALTER TABLE ONLY public.changeset_comments
2925     ADD CONSTRAINT changeset_comments_changeset_id_fkey FOREIGN KEY (changeset_id) REFERENCES public.changesets(id);
2926
2927
2928 --
2929 -- Name: changeset_tags changeset_tags_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2930 --
2931
2932 ALTER TABLE ONLY public.changeset_tags
2933     ADD CONSTRAINT changeset_tags_id_fkey FOREIGN KEY (changeset_id) REFERENCES public.changesets(id);
2934
2935
2936 --
2937 -- Name: changesets_subscribers changesets_subscribers_changeset_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2938 --
2939
2940 ALTER TABLE ONLY public.changesets_subscribers
2941     ADD CONSTRAINT changesets_subscribers_changeset_id_fkey FOREIGN KEY (changeset_id) REFERENCES public.changesets(id);
2942
2943
2944 --
2945 -- Name: changesets_subscribers changesets_subscribers_subscriber_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2946 --
2947
2948 ALTER TABLE ONLY public.changesets_subscribers
2949     ADD CONSTRAINT changesets_subscribers_subscriber_id_fkey FOREIGN KEY (subscriber_id) REFERENCES public.users(id);
2950
2951
2952 --
2953 -- Name: changesets changesets_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2954 --
2955
2956 ALTER TABLE ONLY public.changesets
2957     ADD CONSTRAINT changesets_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
2958
2959
2960 --
2961 -- Name: current_node_tags current_node_tags_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2962 --
2963
2964 ALTER TABLE ONLY public.current_node_tags
2965     ADD CONSTRAINT current_node_tags_id_fkey FOREIGN KEY (node_id) REFERENCES public.current_nodes(id);
2966
2967
2968 --
2969 -- Name: current_nodes current_nodes_changeset_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2970 --
2971
2972 ALTER TABLE ONLY public.current_nodes
2973     ADD CONSTRAINT current_nodes_changeset_id_fkey FOREIGN KEY (changeset_id) REFERENCES public.changesets(id);
2974
2975
2976 --
2977 -- Name: current_relation_members current_relation_members_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2978 --
2979
2980 ALTER TABLE ONLY public.current_relation_members
2981     ADD CONSTRAINT current_relation_members_id_fkey FOREIGN KEY (relation_id) REFERENCES public.current_relations(id);
2982
2983
2984 --
2985 -- Name: current_relation_tags current_relation_tags_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2986 --
2987
2988 ALTER TABLE ONLY public.current_relation_tags
2989     ADD CONSTRAINT current_relation_tags_id_fkey FOREIGN KEY (relation_id) REFERENCES public.current_relations(id);
2990
2991
2992 --
2993 -- Name: current_relations current_relations_changeset_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
2994 --
2995
2996 ALTER TABLE ONLY public.current_relations
2997     ADD CONSTRAINT current_relations_changeset_id_fkey FOREIGN KEY (changeset_id) REFERENCES public.changesets(id);
2998
2999
3000 --
3001 -- Name: current_way_nodes current_way_nodes_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3002 --
3003
3004 ALTER TABLE ONLY public.current_way_nodes
3005     ADD CONSTRAINT current_way_nodes_id_fkey FOREIGN KEY (way_id) REFERENCES public.current_ways(id);
3006
3007
3008 --
3009 -- Name: current_way_nodes current_way_nodes_node_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3010 --
3011
3012 ALTER TABLE ONLY public.current_way_nodes
3013     ADD CONSTRAINT current_way_nodes_node_id_fkey FOREIGN KEY (node_id) REFERENCES public.current_nodes(id);
3014
3015
3016 --
3017 -- Name: current_way_tags current_way_tags_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3018 --
3019
3020 ALTER TABLE ONLY public.current_way_tags
3021     ADD CONSTRAINT current_way_tags_id_fkey FOREIGN KEY (way_id) REFERENCES public.current_ways(id);
3022
3023
3024 --
3025 -- Name: current_ways current_ways_changeset_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3026 --
3027
3028 ALTER TABLE ONLY public.current_ways
3029     ADD CONSTRAINT current_ways_changeset_id_fkey FOREIGN KEY (changeset_id) REFERENCES public.changesets(id);
3030
3031
3032 --
3033 -- Name: diary_comments diary_comments_diary_entry_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3034 --
3035
3036 ALTER TABLE ONLY public.diary_comments
3037     ADD CONSTRAINT diary_comments_diary_entry_id_fkey FOREIGN KEY (diary_entry_id) REFERENCES public.diary_entries(id);
3038
3039
3040 --
3041 -- Name: diary_comments diary_comments_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3042 --
3043
3044 ALTER TABLE ONLY public.diary_comments
3045     ADD CONSTRAINT diary_comments_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
3046
3047
3048 --
3049 -- Name: diary_entries diary_entries_language_code_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3050 --
3051
3052 ALTER TABLE ONLY public.diary_entries
3053     ADD CONSTRAINT diary_entries_language_code_fkey FOREIGN KEY (language_code) REFERENCES public.languages(code);
3054
3055
3056 --
3057 -- Name: diary_entries diary_entries_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3058 --
3059
3060 ALTER TABLE ONLY public.diary_entries
3061     ADD CONSTRAINT diary_entries_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
3062
3063
3064 --
3065 -- Name: diary_entry_subscriptions diary_entry_subscriptions_diary_entry_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3066 --
3067
3068 ALTER TABLE ONLY public.diary_entry_subscriptions
3069     ADD CONSTRAINT diary_entry_subscriptions_diary_entry_id_fkey FOREIGN KEY (diary_entry_id) REFERENCES public.diary_entries(id);
3070
3071
3072 --
3073 -- Name: diary_entry_subscriptions diary_entry_subscriptions_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3074 --
3075
3076 ALTER TABLE ONLY public.diary_entry_subscriptions
3077     ADD CONSTRAINT diary_entry_subscriptions_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
3078
3079
3080 --
3081 -- Name: note_subscriptions fk_rails_2c1913f293; Type: FK CONSTRAINT; Schema: public; Owner: -
3082 --
3083
3084 ALTER TABLE ONLY public.note_subscriptions
3085     ADD CONSTRAINT fk_rails_2c1913f293 FOREIGN KEY (note_id) REFERENCES public.notes(id);
3086
3087
3088 --
3089 -- Name: oauth_access_grants fk_rails_330c32d8d9; Type: FK CONSTRAINT; Schema: public; Owner: -
3090 --
3091
3092 ALTER TABLE ONLY public.oauth_access_grants
3093     ADD CONSTRAINT fk_rails_330c32d8d9 FOREIGN KEY (resource_owner_id) REFERENCES public.users(id) NOT VALID;
3094
3095
3096 --
3097 -- Name: user_mutes fk_rails_591dad3359; Type: FK CONSTRAINT; Schema: public; Owner: -
3098 --
3099
3100 ALTER TABLE ONLY public.user_mutes
3101     ADD CONSTRAINT fk_rails_591dad3359 FOREIGN KEY (owner_id) REFERENCES public.users(id);
3102
3103
3104 --
3105 -- Name: social_links fk_rails_6034fd4f62; Type: FK CONSTRAINT; Schema: public; Owner: -
3106 --
3107
3108 ALTER TABLE ONLY public.social_links
3109     ADD CONSTRAINT fk_rails_6034fd4f62 FOREIGN KEY (user_id) REFERENCES public.users(id);
3110
3111
3112 --
3113 -- Name: oauth_access_tokens fk_rails_732cb83ab7; Type: FK CONSTRAINT; Schema: public; Owner: -
3114 --
3115
3116 ALTER TABLE ONLY public.oauth_access_tokens
3117     ADD CONSTRAINT fk_rails_732cb83ab7 FOREIGN KEY (application_id) REFERENCES public.oauth_applications(id) NOT VALID;
3118
3119
3120 --
3121 -- Name: oauth_openid_requests fk_rails_77114b3b09; Type: FK CONSTRAINT; Schema: public; Owner: -
3122 --
3123
3124 ALTER TABLE ONLY public.oauth_openid_requests
3125     ADD CONSTRAINT fk_rails_77114b3b09 FOREIGN KEY (access_grant_id) REFERENCES public.oauth_access_grants(id) ON DELETE CASCADE;
3126
3127
3128 --
3129 -- Name: active_storage_variant_records fk_rails_993965df05; Type: FK CONSTRAINT; Schema: public; Owner: -
3130 --
3131
3132 ALTER TABLE ONLY public.active_storage_variant_records
3133     ADD CONSTRAINT fk_rails_993965df05 FOREIGN KEY (blob_id) REFERENCES public.active_storage_blobs(id);
3134
3135
3136 --
3137 -- Name: note_subscriptions fk_rails_a352f4eced; Type: FK CONSTRAINT; Schema: public; Owner: -
3138 --
3139
3140 ALTER TABLE ONLY public.note_subscriptions
3141     ADD CONSTRAINT fk_rails_a352f4eced FOREIGN KEY (user_id) REFERENCES public.users(id);
3142
3143
3144 --
3145 -- Name: oauth_access_grants fk_rails_b4b53e07b8; Type: FK CONSTRAINT; Schema: public; Owner: -
3146 --
3147
3148 ALTER TABLE ONLY public.oauth_access_grants
3149     ADD CONSTRAINT fk_rails_b4b53e07b8 FOREIGN KEY (application_id) REFERENCES public.oauth_applications(id) NOT VALID;
3150
3151
3152 --
3153 -- Name: active_storage_attachments fk_rails_c3b3935057; Type: FK CONSTRAINT; Schema: public; Owner: -
3154 --
3155
3156 ALTER TABLE ONLY public.active_storage_attachments
3157     ADD CONSTRAINT fk_rails_c3b3935057 FOREIGN KEY (blob_id) REFERENCES public.active_storage_blobs(id);
3158
3159
3160 --
3161 -- Name: oauth_applications fk_rails_cc886e315a; Type: FK CONSTRAINT; Schema: public; Owner: -
3162 --
3163
3164 ALTER TABLE ONLY public.oauth_applications
3165     ADD CONSTRAINT fk_rails_cc886e315a FOREIGN KEY (owner_id) REFERENCES public.users(id) NOT VALID;
3166
3167
3168 --
3169 -- Name: user_mutes fk_rails_e9dd4fb6c3; Type: FK CONSTRAINT; Schema: public; Owner: -
3170 --
3171
3172 ALTER TABLE ONLY public.user_mutes
3173     ADD CONSTRAINT fk_rails_e9dd4fb6c3 FOREIGN KEY (subject_id) REFERENCES public.users(id);
3174
3175
3176 --
3177 -- Name: oauth_access_tokens fk_rails_ee63f25419; Type: FK CONSTRAINT; Schema: public; Owner: -
3178 --
3179
3180 ALTER TABLE ONLY public.oauth_access_tokens
3181     ADD CONSTRAINT fk_rails_ee63f25419 FOREIGN KEY (resource_owner_id) REFERENCES public.users(id) NOT VALID;
3182
3183
3184 --
3185 -- Name: friends friends_friend_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3186 --
3187
3188 ALTER TABLE ONLY public.friends
3189     ADD CONSTRAINT friends_friend_user_id_fkey FOREIGN KEY (friend_user_id) REFERENCES public.users(id);
3190
3191
3192 --
3193 -- Name: friends friends_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3194 --
3195
3196 ALTER TABLE ONLY public.friends
3197     ADD CONSTRAINT friends_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
3198
3199
3200 --
3201 -- Name: gps_points gps_points_gpx_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3202 --
3203
3204 ALTER TABLE ONLY public.gps_points
3205     ADD CONSTRAINT gps_points_gpx_id_fkey FOREIGN KEY (gpx_id) REFERENCES public.gpx_files(id);
3206
3207
3208 --
3209 -- Name: gpx_file_tags gpx_file_tags_gpx_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3210 --
3211
3212 ALTER TABLE ONLY public.gpx_file_tags
3213     ADD CONSTRAINT gpx_file_tags_gpx_id_fkey FOREIGN KEY (gpx_id) REFERENCES public.gpx_files(id);
3214
3215
3216 --
3217 -- Name: gpx_files gpx_files_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3218 --
3219
3220 ALTER TABLE ONLY public.gpx_files
3221     ADD CONSTRAINT gpx_files_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
3222
3223
3224 --
3225 -- Name: issue_comments issue_comments_issue_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3226 --
3227
3228 ALTER TABLE ONLY public.issue_comments
3229     ADD CONSTRAINT issue_comments_issue_id_fkey FOREIGN KEY (issue_id) REFERENCES public.issues(id);
3230
3231
3232 --
3233 -- Name: issue_comments issue_comments_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3234 --
3235
3236 ALTER TABLE ONLY public.issue_comments
3237     ADD CONSTRAINT issue_comments_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
3238
3239
3240 --
3241 -- Name: issues issues_reported_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3242 --
3243
3244 ALTER TABLE ONLY public.issues
3245     ADD CONSTRAINT issues_reported_user_id_fkey FOREIGN KEY (reported_user_id) REFERENCES public.users(id);
3246
3247
3248 --
3249 -- Name: issues issues_resolved_by_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3250 --
3251
3252 ALTER TABLE ONLY public.issues
3253     ADD CONSTRAINT issues_resolved_by_fkey FOREIGN KEY (resolved_by) REFERENCES public.users(id);
3254
3255
3256 --
3257 -- Name: issues issues_updated_by_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3258 --
3259
3260 ALTER TABLE ONLY public.issues
3261     ADD CONSTRAINT issues_updated_by_fkey FOREIGN KEY (updated_by) REFERENCES public.users(id);
3262
3263
3264 --
3265 -- Name: messages messages_from_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3266 --
3267
3268 ALTER TABLE ONLY public.messages
3269     ADD CONSTRAINT messages_from_user_id_fkey FOREIGN KEY (from_user_id) REFERENCES public.users(id);
3270
3271
3272 --
3273 -- Name: messages messages_to_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3274 --
3275
3276 ALTER TABLE ONLY public.messages
3277     ADD CONSTRAINT messages_to_user_id_fkey FOREIGN KEY (to_user_id) REFERENCES public.users(id);
3278
3279
3280 --
3281 -- Name: node_tags node_tags_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3282 --
3283
3284 ALTER TABLE ONLY public.node_tags
3285     ADD CONSTRAINT node_tags_id_fkey FOREIGN KEY (node_id, version) REFERENCES public.nodes(node_id, version);
3286
3287
3288 --
3289 -- Name: nodes nodes_changeset_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3290 --
3291
3292 ALTER TABLE ONLY public.nodes
3293     ADD CONSTRAINT nodes_changeset_id_fkey FOREIGN KEY (changeset_id) REFERENCES public.changesets(id);
3294
3295
3296 --
3297 -- Name: nodes nodes_redaction_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3298 --
3299
3300 ALTER TABLE ONLY public.nodes
3301     ADD CONSTRAINT nodes_redaction_id_fkey FOREIGN KEY (redaction_id) REFERENCES public.redactions(id);
3302
3303
3304 --
3305 -- Name: note_comments note_comments_author_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3306 --
3307
3308 ALTER TABLE ONLY public.note_comments
3309     ADD CONSTRAINT note_comments_author_id_fkey FOREIGN KEY (author_id) REFERENCES public.users(id);
3310
3311
3312 --
3313 -- Name: note_comments note_comments_note_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3314 --
3315
3316 ALTER TABLE ONLY public.note_comments
3317     ADD CONSTRAINT note_comments_note_id_fkey FOREIGN KEY (note_id) REFERENCES public.notes(id);
3318
3319
3320 --
3321 -- Name: notes notes_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3322 --
3323
3324 ALTER TABLE ONLY public.notes
3325     ADD CONSTRAINT notes_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
3326
3327
3328 --
3329 -- Name: redactions redactions_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3330 --
3331
3332 ALTER TABLE ONLY public.redactions
3333     ADD CONSTRAINT redactions_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
3334
3335
3336 --
3337 -- Name: relation_members relation_members_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3338 --
3339
3340 ALTER TABLE ONLY public.relation_members
3341     ADD CONSTRAINT relation_members_id_fkey FOREIGN KEY (relation_id, version) REFERENCES public.relations(relation_id, version);
3342
3343
3344 --
3345 -- Name: relation_tags relation_tags_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3346 --
3347
3348 ALTER TABLE ONLY public.relation_tags
3349     ADD CONSTRAINT relation_tags_id_fkey FOREIGN KEY (relation_id, version) REFERENCES public.relations(relation_id, version);
3350
3351
3352 --
3353 -- Name: relations relations_changeset_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3354 --
3355
3356 ALTER TABLE ONLY public.relations
3357     ADD CONSTRAINT relations_changeset_id_fkey FOREIGN KEY (changeset_id) REFERENCES public.changesets(id);
3358
3359
3360 --
3361 -- Name: relations relations_redaction_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3362 --
3363
3364 ALTER TABLE ONLY public.relations
3365     ADD CONSTRAINT relations_redaction_id_fkey FOREIGN KEY (redaction_id) REFERENCES public.redactions(id);
3366
3367
3368 --
3369 -- Name: reports reports_issue_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3370 --
3371
3372 ALTER TABLE ONLY public.reports
3373     ADD CONSTRAINT reports_issue_id_fkey FOREIGN KEY (issue_id) REFERENCES public.issues(id);
3374
3375
3376 --
3377 -- Name: reports reports_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3378 --
3379
3380 ALTER TABLE ONLY public.reports
3381     ADD CONSTRAINT reports_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
3382
3383
3384 --
3385 -- Name: user_blocks user_blocks_moderator_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3386 --
3387
3388 ALTER TABLE ONLY public.user_blocks
3389     ADD CONSTRAINT user_blocks_moderator_id_fkey FOREIGN KEY (creator_id) REFERENCES public.users(id);
3390
3391
3392 --
3393 -- Name: user_blocks user_blocks_revoker_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3394 --
3395
3396 ALTER TABLE ONLY public.user_blocks
3397     ADD CONSTRAINT user_blocks_revoker_id_fkey FOREIGN KEY (revoker_id) REFERENCES public.users(id);
3398
3399
3400 --
3401 -- Name: user_blocks user_blocks_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3402 --
3403
3404 ALTER TABLE ONLY public.user_blocks
3405     ADD CONSTRAINT user_blocks_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
3406
3407
3408 --
3409 -- Name: user_preferences user_preferences_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3410 --
3411
3412 ALTER TABLE ONLY public.user_preferences
3413     ADD CONSTRAINT user_preferences_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
3414
3415
3416 --
3417 -- Name: user_roles user_roles_granter_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3418 --
3419
3420 ALTER TABLE ONLY public.user_roles
3421     ADD CONSTRAINT user_roles_granter_id_fkey FOREIGN KEY (granter_id) REFERENCES public.users(id);
3422
3423
3424 --
3425 -- Name: user_roles user_roles_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3426 --
3427
3428 ALTER TABLE ONLY public.user_roles
3429     ADD CONSTRAINT user_roles_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
3430
3431
3432 --
3433 -- Name: way_nodes way_nodes_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3434 --
3435
3436 ALTER TABLE ONLY public.way_nodes
3437     ADD CONSTRAINT way_nodes_id_fkey FOREIGN KEY (way_id, version) REFERENCES public.ways(way_id, version);
3438
3439
3440 --
3441 -- Name: way_tags way_tags_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3442 --
3443
3444 ALTER TABLE ONLY public.way_tags
3445     ADD CONSTRAINT way_tags_id_fkey FOREIGN KEY (way_id, version) REFERENCES public.ways(way_id, version);
3446
3447
3448 --
3449 -- Name: ways ways_changeset_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3450 --
3451
3452 ALTER TABLE ONLY public.ways
3453     ADD CONSTRAINT ways_changeset_id_fkey FOREIGN KEY (changeset_id) REFERENCES public.changesets(id);
3454
3455
3456 --
3457 -- Name: ways ways_redaction_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
3458 --
3459
3460 ALTER TABLE ONLY public.ways
3461     ADD CONSTRAINT ways_redaction_id_fkey FOREIGN KEY (redaction_id) REFERENCES public.redactions(id);
3462
3463
3464 --
3465 -- PostgreSQL database dump complete
3466 --
3467
3468 SET search_path TO "$user", public;
3469
3470 INSERT INTO "schema_migrations" (version) VALUES
3471 ('9'),
3472 ('8'),
3473 ('7'),
3474 ('6'),
3475 ('57'),
3476 ('56'),
3477 ('55'),
3478 ('54'),
3479 ('53'),
3480 ('52'),
3481 ('51'),
3482 ('50'),
3483 ('5'),
3484 ('49'),
3485 ('48'),
3486 ('47'),
3487 ('46'),
3488 ('45'),
3489 ('44'),
3490 ('43'),
3491 ('42'),
3492 ('41'),
3493 ('40'),
3494 ('4'),
3495 ('39'),
3496 ('38'),
3497 ('37'),
3498 ('36'),
3499 ('35'),
3500 ('34'),
3501 ('33'),
3502 ('32'),
3503 ('31'),
3504 ('30'),
3505 ('3'),
3506 ('29'),
3507 ('28'),
3508 ('27'),
3509 ('26'),
3510 ('25'),
3511 ('24'),
3512 ('23'),
3513 ('22'),
3514 ('21'),
3515 ('20250304172798'),
3516 ('20250304172758'),
3517 ('20250212160355'),
3518 ('20250206202905'),
3519 ('20250121191749'),
3520 ('20250106113207'),
3521 ('20250105154621'),
3522 ('20250104140952'),
3523 ('20241023004427'),
3524 ('20241022141247'),
3525 ('20240913171951'),
3526 ('20240912181413'),
3527 ('20240910175616'),
3528 ('20240822121603'),
3529 ('20240813070506'),
3530 ('20240724194738'),
3531 ('20240618193051'),
3532 ('20240605134916'),
3533 ('20240405083825'),
3534 ('20240307181018'),
3535 ('20240307180830'),
3536 ('20240228205723'),
3537 ('20240117185445'),
3538 ('20231213182102'),
3539 ('20231206141457'),
3540 ('20231117170422'),
3541 ('20231101222146'),
3542 ('20231029151516'),
3543 ('20231010203028'),
3544 ('20231010201451'),
3545 ('20231010194809'),
3546 ('20231007141103'),
3547 ('20230830115220'),
3548 ('20230830115219'),
3549 ('20230825162137'),
3550 ('20230816135800'),
3551 ('20220223140543'),
3552 ('20220201183346'),
3553 ('20211216185316'),
3554 ('20210511104518'),
3555 ('20210510083028'),
3556 ('20210510083027'),
3557 ('20201214144017'),
3558 ('20201006220807'),
3559 ('20201006213836'),
3560 ('20201004105659'),
3561 ('20191120140058'),
3562 ('20190716173946'),
3563 ('20190702193519'),
3564 ('20190623093642'),
3565 ('20190518115041'),
3566 ('20181031113522'),
3567 ('20181020114000'),
3568 ('20180204153242'),
3569 ('20170222134109'),
3570 ('20161011010929'),
3571 ('20161002153425'),
3572 ('20160822153055'),
3573 ('20150818224516'),
3574 ('20150222101847'),
3575 ('20150111192335'),
3576 ('20150110152606'),
3577 ('20140519141742'),
3578 ('20140507110937'),
3579 ('20140210003018'),
3580 ('20140117185510'),
3581 ('20140115192822'),
3582 ('20131212124700'),
3583 ('20130328184137'),
3584 ('20121203124841'),
3585 ('20121202155309'),
3586 ('20121119165817'),
3587 ('20121012044047'),
3588 ('20121005195010'),
3589 ('20120808231205'),
3590 ('20120404205604'),
3591 ('20120328090602'),
3592 ('20120318201948'),
3593 ('20120219161649'),
3594 ('20120214210114'),
3595 ('20120208194454'),
3596 ('20120208122334'),
3597 ('20120123184321'),
3598 ('20111212183945'),
3599 ('20111116184519'),
3600 ('20110925112722'),
3601 ('20110521142405'),
3602 ('20110508145337'),
3603 ('20110322001319'),
3604 ('20101114011429'),
3605 ('20100910084426'),
3606 ('20100516124737'),
3607 ('20100513171259'),
3608 ('20'),
3609 ('2'),
3610 ('19'),
3611 ('18'),
3612 ('17'),
3613 ('16'),
3614 ('15'),
3615 ('14'),
3616 ('13'),
3617 ('12'),
3618 ('11'),
3619 ('10'),
3620 ('1');
3621