]> git.openstreetmap.org Git - rails.git/blobdiff - db/structure.sql
Update to iD v2.4.2
[rails.git] / db / structure.sql
index 8e76de5160622df47f7b70b748b2839da509dfa9..08aafa8d7ccea6d24ceb06927b777d1aee9ee7df 100644 (file)
@@ -2,12 +2,16 @@
 -- PostgreSQL database dump
 --
 
 -- PostgreSQL database dump
 --
 
+-- Dumped from database version 9.5.7
+-- Dumped by pg_dump version 9.5.7
+
 SET statement_timeout = 0;
 SET lock_timeout = 0;
 SET client_encoding = 'UTF8';
 SET standard_conforming_strings = on;
 SET check_function_bodies = false;
 SET client_min_messages = warning;
 SET statement_timeout = 0;
 SET lock_timeout = 0;
 SET client_encoding = 'UTF8';
 SET standard_conforming_strings = on;
 SET check_function_bodies = false;
 SET client_min_messages = warning;
+SET row_security = off;
 
 --
 -- Name: plpgsql; Type: EXTENSION; Schema: -; Owner: -
 
 --
 -- Name: plpgsql; Type: EXTENSION; Schema: -; Owner: -
@@ -120,20 +124,47 @@ CREATE TYPE user_status_enum AS ENUM (
 );
 
 
 );
 
 
+--
+-- Name: maptile_for_point(bigint, bigint, integer); Type: FUNCTION; Schema: public; Owner: -
+--
+
+CREATE FUNCTION maptile_for_point(bigint, bigint, integer) RETURNS integer
+    LANGUAGE c STRICT
+    AS '$libdir/libpgosm', 'maptile_for_point';
+
+
+--
+-- Name: tile_for_point(integer, integer); Type: FUNCTION; Schema: public; Owner: -
+--
+
+CREATE FUNCTION tile_for_point(integer, integer) RETURNS bigint
+    LANGUAGE c STRICT
+    AS '$libdir/libpgosm', 'tile_for_point';
+
+
+--
+-- Name: xid_to_int4(xid); Type: FUNCTION; Schema: public; Owner: -
+--
+
+CREATE FUNCTION xid_to_int4(xid) RETURNS integer
+    LANGUAGE c IMMUTABLE STRICT
+    AS '$libdir/libpgosm', 'xid_to_int4';
+
+
 SET default_tablespace = '';
 
 SET default_with_oids = false;
 
 --
 SET default_tablespace = '';
 
 SET default_with_oids = false;
 
 --
--- Name: acls; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: acls; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE acls (
     id integer NOT NULL,
     address inet,
 --
 
 CREATE TABLE acls (
     id integer NOT NULL,
     address inet,
-    k character varying NOT NULL,
-    v character varying,
-    domain character varying
+    k character varying(255) NOT NULL,
+    v character varying(255),
+    domain character varying(255)
 );
 
 
 );
 
 
@@ -157,7 +188,19 @@ ALTER SEQUENCE acls_id_seq OWNED BY acls.id;
 
 
 --
 
 
 --
--- Name: changeset_comments; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: ar_internal_metadata; Type: TABLE; Schema: public; Owner: -
+--
+
+CREATE TABLE ar_internal_metadata (
+    key character varying NOT NULL,
+    value character varying,
+    created_at timestamp without time zone NOT NULL,
+    updated_at timestamp without time zone NOT NULL
+);
+
+
+--
+-- Name: changeset_comments; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE changeset_comments (
 --
 
 CREATE TABLE changeset_comments (
@@ -190,18 +233,18 @@ ALTER SEQUENCE changeset_comments_id_seq OWNED BY changeset_comments.id;
 
 
 --
 
 
 --
--- Name: changeset_tags; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: changeset_tags; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE changeset_tags (
     changeset_id bigint NOT NULL,
 --
 
 CREATE TABLE changeset_tags (
     changeset_id bigint NOT NULL,
-    k character varying DEFAULT ''::character varying NOT NULL,
-    v character varying DEFAULT ''::character varying NOT NULL
+    k character varying(255) DEFAULT ''::character varying NOT NULL,
+    v character varying(255) DEFAULT ''::character varying NOT NULL
 );
 
 
 --
 );
 
 
 --
--- Name: changesets; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: changesets; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE changesets (
 --
 
 CREATE TABLE changesets (
@@ -237,7 +280,7 @@ ALTER SEQUENCE changesets_id_seq OWNED BY changesets.id;
 
 
 --
 
 
 --
--- Name: changesets_subscribers; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: changesets_subscribers; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE changesets_subscribers (
 --
 
 CREATE TABLE changesets_subscribers (
@@ -247,15 +290,15 @@ CREATE TABLE changesets_subscribers (
 
 
 --
 
 
 --
--- Name: client_applications; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: client_applications; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE client_applications (
     id integer NOT NULL,
 --
 
 CREATE TABLE client_applications (
     id integer NOT NULL,
-    name character varying,
-    url character varying,
-    support_url character varying,
-    callback_url character varying,
+    name character varying(255),
+    url character varying(255),
+    support_url character varying(255),
+    callback_url character varying(255),
     key character varying(50),
     secret character varying(50),
     user_id integer,
     key character varying(50),
     secret character varying(50),
     user_id integer,
@@ -291,18 +334,18 @@ ALTER SEQUENCE client_applications_id_seq OWNED BY client_applications.id;
 
 
 --
 
 
 --
--- Name: current_node_tags; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: current_node_tags; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE current_node_tags (
     node_id bigint NOT NULL,
 --
 
 CREATE TABLE current_node_tags (
     node_id bigint NOT NULL,
-    k character varying DEFAULT ''::character varying NOT NULL,
-    v character varying DEFAULT ''::character varying NOT NULL
+    k character varying(255) DEFAULT ''::character varying NOT NULL,
+    v character varying(255) DEFAULT ''::character varying NOT NULL
 );
 
 
 --
 );
 
 
 --
--- Name: current_nodes; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: current_nodes; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE current_nodes (
 --
 
 CREATE TABLE current_nodes (
@@ -337,31 +380,31 @@ ALTER SEQUENCE current_nodes_id_seq OWNED BY current_nodes.id;
 
 
 --
 
 
 --
--- Name: current_relation_members; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: current_relation_members; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE current_relation_members (
     relation_id bigint NOT NULL,
     member_type nwr_enum NOT NULL,
     member_id bigint NOT NULL,
 --
 
 CREATE TABLE current_relation_members (
     relation_id bigint NOT NULL,
     member_type nwr_enum NOT NULL,
     member_id bigint NOT NULL,
-    member_role character varying NOT NULL,
+    member_role character varying(255) NOT NULL,
     sequence_id integer DEFAULT 0 NOT NULL
 );
 
 
 --
     sequence_id integer DEFAULT 0 NOT NULL
 );
 
 
 --
--- Name: current_relation_tags; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: current_relation_tags; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE current_relation_tags (
     relation_id bigint NOT NULL,
 --
 
 CREATE TABLE current_relation_tags (
     relation_id bigint NOT NULL,
-    k character varying DEFAULT ''::character varying NOT NULL,
-    v character varying DEFAULT ''::character varying NOT NULL
+    k character varying(255) DEFAULT ''::character varying NOT NULL,
+    v character varying(255) DEFAULT ''::character varying NOT NULL
 );
 
 
 --
 );
 
 
 --
--- Name: current_relations; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: current_relations; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE current_relations (
 --
 
 CREATE TABLE current_relations (
@@ -393,7 +436,7 @@ ALTER SEQUENCE current_relations_id_seq OWNED BY current_relations.id;
 
 
 --
 
 
 --
--- Name: current_way_nodes; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: current_way_nodes; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE current_way_nodes (
 --
 
 CREATE TABLE current_way_nodes (
@@ -404,18 +447,18 @@ CREATE TABLE current_way_nodes (
 
 
 --
 
 
 --
--- Name: current_way_tags; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: current_way_tags; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE current_way_tags (
     way_id bigint NOT NULL,
 --
 
 CREATE TABLE current_way_tags (
     way_id bigint NOT NULL,
-    k character varying DEFAULT ''::character varying NOT NULL,
-    v character varying DEFAULT ''::character varying NOT NULL
+    k character varying(255) DEFAULT ''::character varying NOT NULL,
+    v character varying(255) DEFAULT ''::character varying NOT NULL
 );
 
 
 --
 );
 
 
 --
--- Name: current_ways; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: current_ways; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE current_ways (
 --
 
 CREATE TABLE current_ways (
@@ -447,7 +490,7 @@ ALTER SEQUENCE current_ways_id_seq OWNED BY current_ways.id;
 
 
 --
 
 
 --
--- Name: diary_comments; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: diary_comments; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE diary_comments (
 --
 
 CREATE TABLE diary_comments (
@@ -482,19 +525,19 @@ ALTER SEQUENCE diary_comments_id_seq OWNED BY diary_comments.id;
 
 
 --
 
 
 --
--- Name: diary_entries; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: diary_entries; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE diary_entries (
     id bigint NOT NULL,
     user_id bigint NOT NULL,
 --
 
 CREATE TABLE diary_entries (
     id bigint NOT NULL,
     user_id bigint NOT NULL,
-    title character varying NOT NULL,
+    title character varying(255) NOT NULL,
     body text NOT NULL,
     created_at timestamp without time zone NOT NULL,
     updated_at timestamp without time zone NOT NULL,
     latitude double precision,
     longitude double precision,
     body text NOT NULL,
     created_at timestamp without time zone NOT NULL,
     updated_at timestamp without time zone NOT NULL,
     latitude double precision,
     longitude double precision,
-    language_code character varying DEFAULT 'en'::character varying NOT NULL,
+    language_code character varying(255) DEFAULT 'en'::character varying NOT NULL,
     visible boolean DEFAULT true NOT NULL,
     body_format format_enum DEFAULT 'markdown'::format_enum NOT NULL
 );
     visible boolean DEFAULT true NOT NULL,
     body_format format_enum DEFAULT 'markdown'::format_enum NOT NULL
 );
@@ -520,7 +563,17 @@ ALTER SEQUENCE diary_entries_id_seq OWNED BY diary_entries.id;
 
 
 --
 
 
 --
--- Name: friends; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: diary_entry_subscriptions; Type: TABLE; Schema: public; Owner: -
+--
+
+CREATE TABLE diary_entry_subscriptions (
+    user_id bigint NOT NULL,
+    diary_entry_id bigint NOT NULL
+);
+
+
+--
+-- Name: friends; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE friends (
 --
 
 CREATE TABLE friends (
@@ -550,7 +603,7 @@ ALTER SEQUENCE friends_id_seq OWNED BY friends.id;
 
 
 --
 
 
 --
--- Name: gps_points; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: gps_points; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE gps_points (
 --
 
 CREATE TABLE gps_points (
@@ -565,12 +618,12 @@ CREATE TABLE gps_points (
 
 
 --
 
 
 --
--- Name: gpx_file_tags; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: gpx_file_tags; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE gpx_file_tags (
     gpx_id bigint DEFAULT 0 NOT NULL,
 --
 
 CREATE TABLE gpx_file_tags (
     gpx_id bigint DEFAULT 0 NOT NULL,
-    tag character varying NOT NULL,
+    tag character varying(255) NOT NULL,
     id bigint NOT NULL
 );
 
     id bigint NOT NULL
 );
 
@@ -595,19 +648,19 @@ ALTER SEQUENCE gpx_file_tags_id_seq OWNED BY gpx_file_tags.id;
 
 
 --
 
 
 --
--- Name: gpx_files; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: gpx_files; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE gpx_files (
     id bigint NOT NULL,
     user_id bigint NOT NULL,
     visible boolean DEFAULT true NOT NULL,
 --
 
 CREATE TABLE gpx_files (
     id bigint NOT NULL,
     user_id bigint NOT NULL,
     visible boolean DEFAULT true NOT NULL,
-    name character varying DEFAULT ''::character varying NOT NULL,
+    name character varying(255) DEFAULT ''::character varying NOT NULL,
     size bigint,
     latitude double precision,
     longitude double precision,
     "timestamp" timestamp without time zone NOT NULL,
     size bigint,
     latitude double precision,
     longitude double precision,
     "timestamp" timestamp without time zone NOT NULL,
-    description character varying DEFAULT ''::character varying NOT NULL,
+    description character varying(255) DEFAULT ''::character varying NOT NULL,
     inserted boolean NOT NULL,
     visibility gpx_visibility_enum DEFAULT 'public'::gpx_visibility_enum NOT NULL
 );
     inserted boolean NOT NULL,
     visibility gpx_visibility_enum DEFAULT 'public'::gpx_visibility_enum NOT NULL
 );
@@ -633,24 +686,24 @@ ALTER SEQUENCE gpx_files_id_seq OWNED BY gpx_files.id;
 
 
 --
 
 
 --
--- Name: languages; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: languages; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE languages (
 --
 
 CREATE TABLE languages (
-    code character varying NOT NULL,
-    english_name character varying NOT NULL,
-    native_name character varying
+    code character varying(255) NOT NULL,
+    english_name character varying(255) NOT NULL,
+    native_name character varying(255)
 );
 
 
 --
 );
 
 
 --
--- Name: messages; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: messages; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE messages (
     id bigint NOT NULL,
     from_user_id bigint NOT NULL,
 --
 
 CREATE TABLE messages (
     id bigint NOT NULL,
     from_user_id bigint NOT NULL,
-    title character varying NOT NULL,
+    title character varying(255) NOT NULL,
     body text NOT NULL,
     sent_on timestamp without time zone NOT NULL,
     message_read boolean DEFAULT false NOT NULL,
     body text NOT NULL,
     sent_on timestamp without time zone NOT NULL,
     message_read boolean DEFAULT false NOT NULL,
@@ -681,19 +734,19 @@ ALTER SEQUENCE messages_id_seq OWNED BY messages.id;
 
 
 --
 
 
 --
--- Name: node_tags; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: node_tags; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE node_tags (
     node_id bigint NOT NULL,
     version bigint NOT NULL,
 --
 
 CREATE TABLE node_tags (
     node_id bigint NOT NULL,
     version bigint NOT NULL,
-    k character varying DEFAULT ''::character varying NOT NULL,
-    v character varying DEFAULT ''::character varying NOT NULL
+    k character varying(255) DEFAULT ''::character varying NOT NULL,
+    v character varying(255) DEFAULT ''::character varying NOT NULL
 );
 
 
 --
 );
 
 
 --
--- Name: nodes; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: nodes; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE nodes (
 --
 
 CREATE TABLE nodes (
@@ -710,11 +763,11 @@ CREATE TABLE nodes (
 
 
 --
 
 
 --
--- Name: note_comments; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: note_comments; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE note_comments (
 --
 
 CREATE TABLE note_comments (
-    id bigint NOT NULL,
+    id integer NOT NULL,
     note_id bigint NOT NULL,
     visible boolean NOT NULL,
     created_at timestamp without time zone NOT NULL,
     note_id bigint NOT NULL,
     visible boolean NOT NULL,
     created_at timestamp without time zone NOT NULL,
@@ -745,11 +798,11 @@ ALTER SEQUENCE note_comments_id_seq OWNED BY note_comments.id;
 
 
 --
 
 
 --
--- Name: notes; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: notes; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE notes (
 --
 
 CREATE TABLE notes (
-    id bigint NOT NULL,
+    id integer NOT NULL,
     latitude integer NOT NULL,
     longitude integer NOT NULL,
     tile bigint NOT NULL,
     latitude integer NOT NULL,
     longitude integer NOT NULL,
     tile bigint NOT NULL,
@@ -780,12 +833,12 @@ ALTER SEQUENCE notes_id_seq OWNED BY notes.id;
 
 
 --
 
 
 --
--- Name: oauth_nonces; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: oauth_nonces; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE oauth_nonces (
     id integer NOT NULL,
 --
 
 CREATE TABLE oauth_nonces (
     id integer NOT NULL,
-    nonce character varying,
+    nonce character varying(255),
     "timestamp" integer,
     created_at timestamp without time zone,
     updated_at timestamp without time zone
     "timestamp" integer,
     created_at timestamp without time zone,
     updated_at timestamp without time zone
@@ -812,7 +865,7 @@ ALTER SEQUENCE oauth_nonces_id_seq OWNED BY oauth_nonces.id;
 
 
 --
 
 
 --
--- Name: oauth_tokens; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: oauth_tokens; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE oauth_tokens (
 --
 
 CREATE TABLE oauth_tokens (
@@ -832,9 +885,9 @@ CREATE TABLE oauth_tokens (
     allow_write_api boolean DEFAULT false NOT NULL,
     allow_read_gpx boolean DEFAULT false NOT NULL,
     allow_write_gpx boolean DEFAULT false NOT NULL,
     allow_write_api boolean DEFAULT false NOT NULL,
     allow_read_gpx boolean DEFAULT false NOT NULL,
     allow_write_gpx boolean DEFAULT false NOT NULL,
-    callback_url character varying,
+    callback_url character varying(255),
     verifier character varying(20),
     verifier character varying(20),
-    scope character varying,
+    scope character varying(255),
     valid_to timestamp without time zone,
     allow_write_notes boolean DEFAULT false NOT NULL
 );
     valid_to timestamp without time zone,
     allow_write_notes boolean DEFAULT false NOT NULL
 );
@@ -860,15 +913,15 @@ ALTER SEQUENCE oauth_tokens_id_seq OWNED BY oauth_tokens.id;
 
 
 --
 
 
 --
--- Name: redactions; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: redactions; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE redactions (
     id integer NOT NULL,
 --
 
 CREATE TABLE redactions (
     id integer NOT NULL,
-    title character varying,
+    title character varying(255),
     description text,
     description text,
-    created_at timestamp without time zone,
-    updated_at timestamp without time zone,
+    created_at timestamp without time zone NOT NULL,
+    updated_at timestamp without time zone NOT NULL,
     user_id bigint NOT NULL,
     description_format format_enum DEFAULT 'markdown'::format_enum NOT NULL
 );
     user_id bigint NOT NULL,
     description_format format_enum DEFAULT 'markdown'::format_enum NOT NULL
 );
@@ -894,33 +947,33 @@ ALTER SEQUENCE redactions_id_seq OWNED BY redactions.id;
 
 
 --
 
 
 --
--- Name: relation_members; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: relation_members; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE relation_members (
     relation_id bigint DEFAULT 0 NOT NULL,
     member_type nwr_enum NOT NULL,
     member_id bigint NOT NULL,
 --
 
 CREATE TABLE relation_members (
     relation_id bigint DEFAULT 0 NOT NULL,
     member_type nwr_enum NOT NULL,
     member_id bigint NOT NULL,
-    member_role character varying NOT NULL,
+    member_role character varying(255) NOT NULL,
     version bigint DEFAULT 0 NOT NULL,
     sequence_id integer DEFAULT 0 NOT NULL
 );
 
 
 --
     version bigint DEFAULT 0 NOT NULL,
     sequence_id integer DEFAULT 0 NOT NULL
 );
 
 
 --
--- Name: relation_tags; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: relation_tags; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE relation_tags (
     relation_id bigint DEFAULT 0 NOT NULL,
 --
 
 CREATE TABLE relation_tags (
     relation_id bigint DEFAULT 0 NOT NULL,
-    k character varying DEFAULT ''::character varying NOT NULL,
-    v character varying DEFAULT ''::character varying NOT NULL,
+    k character varying(255) DEFAULT ''::character varying NOT NULL,
+    v character varying(255) DEFAULT ''::character varying NOT NULL,
     version bigint NOT NULL
 );
 
 
 --
     version bigint NOT NULL
 );
 
 
 --
--- Name: relations; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: relations; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE relations (
 --
 
 CREATE TABLE relations (
@@ -934,16 +987,16 @@ CREATE TABLE relations (
 
 
 --
 
 
 --
--- Name: schema_migrations; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: schema_migrations; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE schema_migrations (
 --
 
 CREATE TABLE schema_migrations (
-    version character varying NOT NULL
+    version character varying(255) NOT NULL
 );
 
 
 --
 );
 
 
 --
--- Name: user_blocks; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: user_blocks; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE user_blocks (
 --
 
 CREATE TABLE user_blocks (
@@ -980,26 +1033,26 @@ ALTER SEQUENCE user_blocks_id_seq OWNED BY user_blocks.id;
 
 
 --
 
 
 --
--- Name: user_preferences; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: user_preferences; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE user_preferences (
     user_id bigint NOT NULL,
 --
 
 CREATE TABLE user_preferences (
     user_id bigint NOT NULL,
-    k character varying NOT NULL,
-    v character varying NOT NULL
+    k character varying(255) NOT NULL,
+    v character varying(255) NOT NULL
 );
 
 
 --
 );
 
 
 --
--- Name: user_roles; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: user_roles; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE user_roles (
     id integer NOT NULL,
     user_id bigint NOT NULL,
 --
 
 CREATE TABLE user_roles (
     id integer NOT NULL,
     user_id bigint NOT NULL,
-    role user_role_enum NOT NULL,
     created_at timestamp without time zone,
     updated_at timestamp without time zone,
     created_at timestamp without time zone,
     updated_at timestamp without time zone,
+    role user_role_enum NOT NULL,
     granter_id bigint NOT NULL
 );
 
     granter_id bigint NOT NULL
 );
 
@@ -1024,13 +1077,13 @@ ALTER SEQUENCE user_roles_id_seq OWNED BY user_roles.id;
 
 
 --
 
 
 --
--- Name: user_tokens; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: user_tokens; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE user_tokens (
     id bigint NOT NULL,
     user_id bigint NOT NULL,
 --
 
 CREATE TABLE user_tokens (
     id bigint NOT NULL,
     user_id bigint NOT NULL,
-    token character varying NOT NULL,
+    token character varying(255) NOT NULL,
     expiry timestamp without time zone NOT NULL,
     referer text
 );
     expiry timestamp without time zone NOT NULL,
     referer text
 );
@@ -1056,40 +1109,41 @@ ALTER SEQUENCE user_tokens_id_seq OWNED BY user_tokens.id;
 
 
 --
 
 
 --
--- Name: users; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: users; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE users (
 --
 
 CREATE TABLE users (
-    email character varying NOT NULL,
+    email character varying(255) NOT NULL,
     id bigint NOT NULL,
     id bigint NOT NULL,
-    pass_crypt character varying NOT NULL,
+    pass_crypt character varying(255) NOT NULL,
     creation_time timestamp without time zone NOT NULL,
     creation_time timestamp without time zone NOT NULL,
-    display_name character varying DEFAULT ''::character varying NOT NULL,
+    display_name character varying(255) DEFAULT ''::character varying NOT NULL,
     data_public boolean DEFAULT false NOT NULL,
     description text DEFAULT ''::text NOT NULL,
     home_lat double precision,
     home_lon double precision,
     home_zoom smallint DEFAULT 3,
     nearby integer DEFAULT 50,
     data_public boolean DEFAULT false NOT NULL,
     description text DEFAULT ''::text NOT NULL,
     home_lat double precision,
     home_lon double precision,
     home_zoom smallint DEFAULT 3,
     nearby integer DEFAULT 50,
-    pass_salt character varying,
+    pass_salt character varying(255),
     image_file_name text,
     email_valid boolean DEFAULT false NOT NULL,
     image_file_name text,
     email_valid boolean DEFAULT false NOT NULL,
-    new_email character varying,
-    creation_ip character varying,
-    languages character varying,
+    new_email character varying(255),
+    creation_ip character varying(255),
+    languages character varying(255),
     status user_status_enum DEFAULT 'pending'::user_status_enum NOT NULL,
     terms_agreed timestamp without time zone,
     consider_pd boolean DEFAULT false NOT NULL,
     status user_status_enum DEFAULT 'pending'::user_status_enum NOT NULL,
     terms_agreed timestamp without time zone,
     consider_pd boolean DEFAULT false NOT NULL,
-    openid_url character varying,
-    preferred_editor character varying,
+    preferred_editor character varying(255),
     terms_seen boolean DEFAULT false NOT NULL,
     terms_seen boolean DEFAULT false NOT NULL,
+    auth_uid character varying(255),
     description_format format_enum DEFAULT 'markdown'::format_enum NOT NULL,
     description_format format_enum DEFAULT 'markdown'::format_enum NOT NULL,
-    image_fingerprint character varying,
+    image_fingerprint character varying(255),
     changesets_count integer DEFAULT 0 NOT NULL,
     traces_count integer DEFAULT 0 NOT NULL,
     diary_entries_count integer DEFAULT 0 NOT NULL,
     changesets_count integer DEFAULT 0 NOT NULL,
     traces_count integer DEFAULT 0 NOT NULL,
     diary_entries_count integer DEFAULT 0 NOT NULL,
-    image_use_gravatar boolean DEFAULT true NOT NULL,
-    image_content_type character varying
+    image_use_gravatar boolean DEFAULT false NOT NULL,
+    image_content_type character varying(255),
+    auth_provider character varying
 );
 
 
 );
 
 
@@ -1113,7 +1167,7 @@ ALTER SEQUENCE users_id_seq OWNED BY users.id;
 
 
 --
 
 
 --
--- Name: way_nodes; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: way_nodes; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE way_nodes (
 --
 
 CREATE TABLE way_nodes (
@@ -1125,19 +1179,19 @@ CREATE TABLE way_nodes (
 
 
 --
 
 
 --
--- Name: way_tags; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: way_tags; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE way_tags (
     way_id bigint DEFAULT 0 NOT NULL,
 --
 
 CREATE TABLE way_tags (
     way_id bigint DEFAULT 0 NOT NULL,
-    k character varying NOT NULL,
-    v character varying NOT NULL,
+    k character varying(255) NOT NULL,
+    v character varying(255) NOT NULL,
     version bigint NOT NULL
 );
 
 
 --
     version bigint NOT NULL
 );
 
 
 --
--- Name: ways; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+-- Name: ways; Type: TABLE; Schema: public; Owner: -
 --
 
 CREATE TABLE ways (
 --
 
 CREATE TABLE ways (
@@ -1305,7 +1359,7 @@ ALTER TABLE ONLY users ALTER COLUMN id SET DEFAULT nextval('users_id_seq'::regcl
 
 
 --
 
 
 --
--- Name: acls_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: acls_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY acls
 --
 
 ALTER TABLE ONLY acls
@@ -1313,7 +1367,15 @@ ALTER TABLE ONLY acls
 
 
 --
 
 
 --
--- Name: changeset_comments_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: ar_internal_metadata_pkey; Type: CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY ar_internal_metadata
+    ADD CONSTRAINT ar_internal_metadata_pkey PRIMARY KEY (key);
+
+
+--
+-- Name: changeset_comments_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY changeset_comments
 --
 
 ALTER TABLE ONLY changeset_comments
@@ -1321,7 +1383,7 @@ ALTER TABLE ONLY changeset_comments
 
 
 --
 
 
 --
--- Name: changesets_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: changesets_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY changesets
 --
 
 ALTER TABLE ONLY changesets
@@ -1329,7 +1391,7 @@ ALTER TABLE ONLY changesets
 
 
 --
 
 
 --
--- Name: client_applications_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: client_applications_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY client_applications
 --
 
 ALTER TABLE ONLY client_applications
@@ -1337,7 +1399,7 @@ ALTER TABLE ONLY client_applications
 
 
 --
 
 
 --
--- Name: current_node_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: current_node_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY current_node_tags
 --
 
 ALTER TABLE ONLY current_node_tags
@@ -1345,7 +1407,7 @@ ALTER TABLE ONLY current_node_tags
 
 
 --
 
 
 --
--- Name: current_nodes_pkey1; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: current_nodes_pkey1; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY current_nodes
 --
 
 ALTER TABLE ONLY current_nodes
@@ -1353,7 +1415,7 @@ ALTER TABLE ONLY current_nodes
 
 
 --
 
 
 --
--- Name: current_relation_members_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: current_relation_members_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY current_relation_members
 --
 
 ALTER TABLE ONLY current_relation_members
@@ -1361,7 +1423,7 @@ ALTER TABLE ONLY current_relation_members
 
 
 --
 
 
 --
--- Name: current_relation_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: current_relation_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY current_relation_tags
 --
 
 ALTER TABLE ONLY current_relation_tags
@@ -1369,7 +1431,7 @@ ALTER TABLE ONLY current_relation_tags
 
 
 --
 
 
 --
--- Name: current_relations_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: current_relations_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY current_relations
 --
 
 ALTER TABLE ONLY current_relations
@@ -1377,7 +1439,7 @@ ALTER TABLE ONLY current_relations
 
 
 --
 
 
 --
--- Name: current_way_nodes_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: current_way_nodes_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY current_way_nodes
 --
 
 ALTER TABLE ONLY current_way_nodes
@@ -1385,7 +1447,7 @@ ALTER TABLE ONLY current_way_nodes
 
 
 --
 
 
 --
--- Name: current_way_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: current_way_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY current_way_tags
 --
 
 ALTER TABLE ONLY current_way_tags
@@ -1393,7 +1455,7 @@ ALTER TABLE ONLY current_way_tags
 
 
 --
 
 
 --
--- Name: current_ways_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: current_ways_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY current_ways
 --
 
 ALTER TABLE ONLY current_ways
@@ -1401,7 +1463,7 @@ ALTER TABLE ONLY current_ways
 
 
 --
 
 
 --
--- Name: diary_comments_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: diary_comments_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY diary_comments
 --
 
 ALTER TABLE ONLY diary_comments
@@ -1409,7 +1471,7 @@ ALTER TABLE ONLY diary_comments
 
 
 --
 
 
 --
--- Name: diary_entries_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: diary_entries_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY diary_entries
 --
 
 ALTER TABLE ONLY diary_entries
@@ -1417,7 +1479,15 @@ ALTER TABLE ONLY diary_entries
 
 
 --
 
 
 --
--- Name: friends_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: diary_entry_subscriptions_pkey; Type: CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY diary_entry_subscriptions
+    ADD CONSTRAINT diary_entry_subscriptions_pkey PRIMARY KEY (user_id, diary_entry_id);
+
+
+--
+-- Name: friends_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY friends
 --
 
 ALTER TABLE ONLY friends
@@ -1425,7 +1495,7 @@ ALTER TABLE ONLY friends
 
 
 --
 
 
 --
--- Name: gpx_file_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: gpx_file_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY gpx_file_tags
 --
 
 ALTER TABLE ONLY gpx_file_tags
@@ -1433,7 +1503,7 @@ ALTER TABLE ONLY gpx_file_tags
 
 
 --
 
 
 --
--- Name: gpx_files_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: gpx_files_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY gpx_files
 --
 
 ALTER TABLE ONLY gpx_files
@@ -1441,7 +1511,7 @@ ALTER TABLE ONLY gpx_files
 
 
 --
 
 
 --
--- Name: languages_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: languages_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY languages
 --
 
 ALTER TABLE ONLY languages
@@ -1449,7 +1519,7 @@ ALTER TABLE ONLY languages
 
 
 --
 
 
 --
--- Name: messages_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: messages_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY messages
 --
 
 ALTER TABLE ONLY messages
@@ -1457,7 +1527,7 @@ ALTER TABLE ONLY messages
 
 
 --
 
 
 --
--- Name: node_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: node_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY node_tags
 --
 
 ALTER TABLE ONLY node_tags
@@ -1465,7 +1535,7 @@ ALTER TABLE ONLY node_tags
 
 
 --
 
 
 --
--- Name: nodes_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: nodes_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY nodes
 --
 
 ALTER TABLE ONLY nodes
@@ -1473,7 +1543,7 @@ ALTER TABLE ONLY nodes
 
 
 --
 
 
 --
--- Name: note_comments_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: note_comments_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY note_comments
 --
 
 ALTER TABLE ONLY note_comments
@@ -1481,7 +1551,7 @@ ALTER TABLE ONLY note_comments
 
 
 --
 
 
 --
--- Name: notes_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: notes_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY notes
 --
 
 ALTER TABLE ONLY notes
@@ -1489,7 +1559,7 @@ ALTER TABLE ONLY notes
 
 
 --
 
 
 --
--- Name: oauth_nonces_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: oauth_nonces_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY oauth_nonces
 --
 
 ALTER TABLE ONLY oauth_nonces
@@ -1497,7 +1567,7 @@ ALTER TABLE ONLY oauth_nonces
 
 
 --
 
 
 --
--- Name: oauth_tokens_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: oauth_tokens_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY oauth_tokens
 --
 
 ALTER TABLE ONLY oauth_tokens
@@ -1505,7 +1575,7 @@ ALTER TABLE ONLY oauth_tokens
 
 
 --
 
 
 --
--- Name: redactions_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: redactions_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY redactions
 --
 
 ALTER TABLE ONLY redactions
@@ -1513,7 +1583,7 @@ ALTER TABLE ONLY redactions
 
 
 --
 
 
 --
--- Name: relation_members_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: relation_members_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY relation_members
 --
 
 ALTER TABLE ONLY relation_members
@@ -1521,7 +1591,7 @@ ALTER TABLE ONLY relation_members
 
 
 --
 
 
 --
--- Name: relation_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: relation_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY relation_tags
 --
 
 ALTER TABLE ONLY relation_tags
@@ -1529,7 +1599,7 @@ ALTER TABLE ONLY relation_tags
 
 
 --
 
 
 --
--- Name: relations_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: relations_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY relations
 --
 
 ALTER TABLE ONLY relations
@@ -1537,7 +1607,7 @@ ALTER TABLE ONLY relations
 
 
 --
 
 
 --
--- Name: user_blocks_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: user_blocks_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY user_blocks
 --
 
 ALTER TABLE ONLY user_blocks
@@ -1545,7 +1615,7 @@ ALTER TABLE ONLY user_blocks
 
 
 --
 
 
 --
--- Name: user_preferences_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: user_preferences_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY user_preferences
 --
 
 ALTER TABLE ONLY user_preferences
@@ -1553,7 +1623,7 @@ ALTER TABLE ONLY user_preferences
 
 
 --
 
 
 --
--- Name: user_roles_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: user_roles_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY user_roles
 --
 
 ALTER TABLE ONLY user_roles
@@ -1561,7 +1631,7 @@ ALTER TABLE ONLY user_roles
 
 
 --
 
 
 --
--- Name: user_tokens_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: user_tokens_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY user_tokens
 --
 
 ALTER TABLE ONLY user_tokens
@@ -1569,7 +1639,7 @@ ALTER TABLE ONLY user_tokens
 
 
 --
 
 
 --
--- Name: users_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: users_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY users
 --
 
 ALTER TABLE ONLY users
@@ -1577,7 +1647,7 @@ ALTER TABLE ONLY users
 
 
 --
 
 
 --
--- Name: way_nodes_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: way_nodes_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY way_nodes
 --
 
 ALTER TABLE ONLY way_nodes
@@ -1585,7 +1655,7 @@ ALTER TABLE ONLY way_nodes
 
 
 --
 
 
 --
--- Name: way_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: way_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY way_tags
 --
 
 ALTER TABLE ONLY way_tags
@@ -1593,7 +1663,7 @@ ALTER TABLE ONLY way_tags
 
 
 --
 
 
 --
--- Name: ways_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+-- Name: ways_pkey; Type: CONSTRAINT; Schema: public; Owner: -
 --
 
 ALTER TABLE ONLY ways
 --
 
 ALTER TABLE ONLY ways
@@ -1601,420 +1671,441 @@ ALTER TABLE ONLY ways
 
 
 --
 
 
 --
--- Name: acls_k_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: acls_k_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX acls_k_idx ON acls USING btree (k);
 
 
 --
 --
 
 CREATE INDEX acls_k_idx ON acls USING btree (k);
 
 
 --
--- Name: changeset_tags_id_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: changeset_tags_id_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX changeset_tags_id_idx ON changeset_tags USING btree (changeset_id);
 
 
 --
 --
 
 CREATE INDEX changeset_tags_id_idx ON changeset_tags USING btree (changeset_id);
 
 
 --
--- Name: changesets_bbox_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: changesets_bbox_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX changesets_bbox_idx ON changesets USING gist (min_lat, max_lat, min_lon, max_lon);
 
 
 --
 --
 
 CREATE INDEX changesets_bbox_idx ON changesets USING gist (min_lat, max_lat, min_lon, max_lon);
 
 
 --
--- Name: changesets_closed_at_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: changesets_closed_at_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX changesets_closed_at_idx ON changesets USING btree (closed_at);
 
 
 --
 --
 
 CREATE INDEX changesets_closed_at_idx ON changesets USING btree (closed_at);
 
 
 --
--- Name: changesets_created_at_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: changesets_created_at_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX changesets_created_at_idx ON changesets USING btree (created_at);
 
 
 --
 --
 
 CREATE INDEX changesets_created_at_idx ON changesets USING btree (created_at);
 
 
 --
--- Name: changesets_user_id_created_at_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: changesets_user_id_created_at_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX changesets_user_id_created_at_idx ON changesets USING btree (user_id, created_at);
 
 
 --
 --
 
 CREATE INDEX changesets_user_id_created_at_idx ON changesets USING btree (user_id, created_at);
 
 
 --
--- Name: changesets_user_id_id_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: changesets_user_id_id_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX changesets_user_id_id_idx ON changesets USING btree (user_id, id);
 
 
 --
 --
 
 CREATE INDEX changesets_user_id_id_idx ON changesets USING btree (user_id, id);
 
 
 --
--- Name: current_nodes_tile_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: current_nodes_tile_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX current_nodes_tile_idx ON current_nodes USING btree (tile);
 
 
 --
 --
 
 CREATE INDEX current_nodes_tile_idx ON current_nodes USING btree (tile);
 
 
 --
--- Name: current_nodes_timestamp_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: current_nodes_timestamp_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX current_nodes_timestamp_idx ON current_nodes USING btree ("timestamp");
 
 
 --
 --
 
 CREATE INDEX current_nodes_timestamp_idx ON current_nodes USING btree ("timestamp");
 
 
 --
--- Name: current_relation_members_member_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: current_relation_members_member_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX current_relation_members_member_idx ON current_relation_members USING btree (member_type, member_id);
 
 
 --
 --
 
 CREATE INDEX current_relation_members_member_idx ON current_relation_members USING btree (member_type, member_id);
 
 
 --
--- Name: current_relations_timestamp_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: current_relations_timestamp_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX current_relations_timestamp_idx ON current_relations USING btree ("timestamp");
 
 
 --
 --
 
 CREATE INDEX current_relations_timestamp_idx ON current_relations USING btree ("timestamp");
 
 
 --
--- Name: current_way_nodes_node_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: current_way_nodes_node_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX current_way_nodes_node_idx ON current_way_nodes USING btree (node_id);
 
 
 --
 --
 
 CREATE INDEX current_way_nodes_node_idx ON current_way_nodes USING btree (node_id);
 
 
 --
--- Name: current_ways_timestamp_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: current_ways_timestamp_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX current_ways_timestamp_idx ON current_ways USING btree ("timestamp");
 
 
 --
 --
 
 CREATE INDEX current_ways_timestamp_idx ON current_ways USING btree ("timestamp");
 
 
 --
--- Name: diary_comment_user_id_created_at_index; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: diary_comment_user_id_created_at_index; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX diary_comment_user_id_created_at_index ON diary_comments USING btree (user_id, created_at);
 
 
 --
 --
 
 CREATE INDEX diary_comment_user_id_created_at_index ON diary_comments USING btree (user_id, created_at);
 
 
 --
--- Name: diary_comments_entry_id_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: diary_comments_entry_id_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE UNIQUE INDEX diary_comments_entry_id_idx ON diary_comments USING btree (diary_entry_id, id);
 
 
 --
 --
 
 CREATE UNIQUE INDEX diary_comments_entry_id_idx ON diary_comments USING btree (diary_entry_id, id);
 
 
 --
--- Name: diary_entry_created_at_index; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: diary_entry_created_at_index; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX diary_entry_created_at_index ON diary_entries USING btree (created_at);
 
 
 --
 --
 
 CREATE INDEX diary_entry_created_at_index ON diary_entries USING btree (created_at);
 
 
 --
--- Name: diary_entry_language_code_created_at_index; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: diary_entry_language_code_created_at_index; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX diary_entry_language_code_created_at_index ON diary_entries USING btree (language_code, created_at);
 
 
 --
 --
 
 CREATE INDEX diary_entry_language_code_created_at_index ON diary_entries USING btree (language_code, created_at);
 
 
 --
--- Name: diary_entry_user_id_created_at_index; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: diary_entry_user_id_created_at_index; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX diary_entry_user_id_created_at_index ON diary_entries USING btree (user_id, created_at);
 
 
 --
 --
 
 CREATE INDEX diary_entry_user_id_created_at_index ON diary_entries USING btree (user_id, created_at);
 
 
 --
--- Name: friends_user_id_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: friends_user_id_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX friends_user_id_idx ON friends USING btree (user_id);
 
 
 --
 --
 
 CREATE INDEX friends_user_id_idx ON friends USING btree (user_id);
 
 
 --
--- Name: gpx_file_tags_gpxid_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: gpx_file_tags_gpxid_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX gpx_file_tags_gpxid_idx ON gpx_file_tags USING btree (gpx_id);
 
 
 --
 --
 
 CREATE INDEX gpx_file_tags_gpxid_idx ON gpx_file_tags USING btree (gpx_id);
 
 
 --
--- Name: gpx_file_tags_tag_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: gpx_file_tags_tag_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX gpx_file_tags_tag_idx ON gpx_file_tags USING btree (tag);
 
 
 --
 --
 
 CREATE INDEX gpx_file_tags_tag_idx ON gpx_file_tags USING btree (tag);
 
 
 --
--- Name: gpx_files_timestamp_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: gpx_files_timestamp_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX gpx_files_timestamp_idx ON gpx_files USING btree ("timestamp");
 
 
 --
 --
 
 CREATE INDEX gpx_files_timestamp_idx ON gpx_files USING btree ("timestamp");
 
 
 --
--- Name: gpx_files_user_id_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: gpx_files_user_id_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX gpx_files_user_id_idx ON gpx_files USING btree (user_id);
 
 
 --
 --
 
 CREATE INDEX gpx_files_user_id_idx ON gpx_files USING btree (user_id);
 
 
 --
--- Name: gpx_files_visible_visibility_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: gpx_files_visible_visibility_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX gpx_files_visible_visibility_idx ON gpx_files USING btree (visible, visibility);
 
 
 --
 --
 
 CREATE INDEX gpx_files_visible_visibility_idx ON gpx_files USING btree (visible, visibility);
 
 
 --
--- Name: index_changeset_comments_on_created_at; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: index_changeset_comments_on_created_at; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX index_changeset_comments_on_created_at ON changeset_comments USING btree (created_at);
 
 
 --
 --
 
 CREATE INDEX index_changeset_comments_on_created_at ON changeset_comments USING btree (created_at);
 
 
 --
--- Name: index_changesets_subscribers_on_changeset_id; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: index_changesets_subscribers_on_changeset_id; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX index_changesets_subscribers_on_changeset_id ON changesets_subscribers USING btree (changeset_id);
 
 
 --
 --
 
 CREATE INDEX index_changesets_subscribers_on_changeset_id ON changesets_subscribers USING btree (changeset_id);
 
 
 --
--- Name: index_changesets_subscribers_on_subscriber_id_and_changeset_id; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: index_changesets_subscribers_on_subscriber_id_and_changeset_id; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE UNIQUE INDEX index_changesets_subscribers_on_subscriber_id_and_changeset_id ON changesets_subscribers USING btree (subscriber_id, changeset_id);
 
 
 --
 --
 
 CREATE UNIQUE INDEX index_changesets_subscribers_on_subscriber_id_and_changeset_id ON changesets_subscribers USING btree (subscriber_id, changeset_id);
 
 
 --
--- Name: index_client_applications_on_key; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: index_client_applications_on_key; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE UNIQUE INDEX index_client_applications_on_key ON client_applications USING btree (key);
 
 
 --
 --
 
 CREATE UNIQUE INDEX index_client_applications_on_key ON client_applications USING btree (key);
 
 
 --
--- Name: index_note_comments_on_body; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: index_client_applications_on_user_id; Type: INDEX; Schema: public; Owner: -
+--
+
+CREATE INDEX index_client_applications_on_user_id ON client_applications USING btree (user_id);
+
+
+--
+-- Name: index_diary_entry_subscriptions_on_diary_entry_id; Type: INDEX; Schema: public; Owner: -
+--
+
+CREATE INDEX index_diary_entry_subscriptions_on_diary_entry_id ON diary_entry_subscriptions USING btree (diary_entry_id);
+
+
+--
+-- Name: index_note_comments_on_body; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX index_note_comments_on_body ON note_comments USING gin (to_tsvector('english'::regconfig, body));
 
 
 --
 --
 
 CREATE INDEX index_note_comments_on_body ON note_comments USING gin (to_tsvector('english'::regconfig, body));
 
 
 --
--- Name: index_note_comments_on_created_at; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: index_note_comments_on_created_at; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX index_note_comments_on_created_at ON note_comments USING btree (created_at);
 
 
 --
 --
 
 CREATE INDEX index_note_comments_on_created_at ON note_comments USING btree (created_at);
 
 
 --
--- Name: index_oauth_nonces_on_nonce_and_timestamp; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: index_oauth_nonces_on_nonce_and_timestamp; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE UNIQUE INDEX index_oauth_nonces_on_nonce_and_timestamp ON oauth_nonces USING btree (nonce, "timestamp");
 
 
 --
 --
 
 CREATE UNIQUE INDEX index_oauth_nonces_on_nonce_and_timestamp ON oauth_nonces USING btree (nonce, "timestamp");
 
 
 --
--- Name: index_oauth_tokens_on_token; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: index_oauth_tokens_on_token; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE UNIQUE INDEX index_oauth_tokens_on_token ON oauth_tokens USING btree (token);
 
 
 --
 --
 
 CREATE UNIQUE INDEX index_oauth_tokens_on_token ON oauth_tokens USING btree (token);
 
 
 --
--- Name: index_user_blocks_on_user_id; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: index_oauth_tokens_on_user_id; Type: INDEX; Schema: public; Owner: -
+--
+
+CREATE INDEX index_oauth_tokens_on_user_id ON oauth_tokens USING btree (user_id);
+
+
+--
+-- Name: index_user_blocks_on_user_id; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX index_user_blocks_on_user_id ON user_blocks USING btree (user_id);
 
 
 --
 --
 
 CREATE INDEX index_user_blocks_on_user_id ON user_blocks USING btree (user_id);
 
 
 --
--- Name: messages_from_user_id_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: messages_from_user_id_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX messages_from_user_id_idx ON messages USING btree (from_user_id);
 
 
 --
 --
 
 CREATE INDEX messages_from_user_id_idx ON messages USING btree (from_user_id);
 
 
 --
--- Name: messages_to_user_id_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: messages_to_user_id_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX messages_to_user_id_idx ON messages USING btree (to_user_id);
 
 
 --
 --
 
 CREATE INDEX messages_to_user_id_idx ON messages USING btree (to_user_id);
 
 
 --
--- Name: nodes_changeset_id_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: nodes_changeset_id_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX nodes_changeset_id_idx ON nodes USING btree (changeset_id);
 
 
 --
 --
 
 CREATE INDEX nodes_changeset_id_idx ON nodes USING btree (changeset_id);
 
 
 --
--- Name: nodes_tile_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: nodes_tile_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX nodes_tile_idx ON nodes USING btree (tile);
 
 
 --
 --
 
 CREATE INDEX nodes_tile_idx ON nodes USING btree (tile);
 
 
 --
--- Name: nodes_timestamp_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: nodes_timestamp_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX nodes_timestamp_idx ON nodes USING btree ("timestamp");
 
 
 --
 --
 
 CREATE INDEX nodes_timestamp_idx ON nodes USING btree ("timestamp");
 
 
 --
--- Name: note_comments_note_id_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: note_comments_note_id_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX note_comments_note_id_idx ON note_comments USING btree (note_id);
 
 
 --
 --
 
 CREATE INDEX note_comments_note_id_idx ON note_comments USING btree (note_id);
 
 
 --
--- Name: notes_created_at_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: notes_created_at_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX notes_created_at_idx ON notes USING btree (created_at);
 
 
 --
 --
 
 CREATE INDEX notes_created_at_idx ON notes USING btree (created_at);
 
 
 --
--- Name: notes_tile_status_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: notes_tile_status_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX notes_tile_status_idx ON notes USING btree (tile, status);
 
 
 --
 --
 
 CREATE INDEX notes_tile_status_idx ON notes USING btree (tile, status);
 
 
 --
--- Name: notes_updated_at_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: notes_updated_at_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX notes_updated_at_idx ON notes USING btree (updated_at);
 
 
 --
 --
 
 CREATE INDEX notes_updated_at_idx ON notes USING btree (updated_at);
 
 
 --
--- Name: points_gpxid_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: points_gpxid_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX points_gpxid_idx ON gps_points USING btree (gpx_id);
 
 
 --
 --
 
 CREATE INDEX points_gpxid_idx ON gps_points USING btree (gpx_id);
 
 
 --
--- Name: points_tile_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: points_tile_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX points_tile_idx ON gps_points USING btree (tile);
 
 
 --
 --
 
 CREATE INDEX points_tile_idx ON gps_points USING btree (tile);
 
 
 --
--- Name: relation_members_member_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: relation_members_member_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX relation_members_member_idx ON relation_members USING btree (member_type, member_id);
 
 
 --
 --
 
 CREATE INDEX relation_members_member_idx ON relation_members USING btree (member_type, member_id);
 
 
 --
--- Name: relations_changeset_id_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: relations_changeset_id_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX relations_changeset_id_idx ON relations USING btree (changeset_id);
 
 
 --
 --
 
 CREATE INDEX relations_changeset_id_idx ON relations USING btree (changeset_id);
 
 
 --
--- Name: relations_timestamp_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: relations_timestamp_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX relations_timestamp_idx ON relations USING btree ("timestamp");
 
 
 --
 --
 
 CREATE INDEX relations_timestamp_idx ON relations USING btree ("timestamp");
 
 
 --
--- Name: unique_schema_migrations; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: unique_schema_migrations; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE UNIQUE INDEX unique_schema_migrations ON schema_migrations USING btree (version);
 
 
 --
 --
 
 CREATE UNIQUE INDEX unique_schema_migrations ON schema_migrations USING btree (version);
 
 
 --
--- Name: user_id_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: user_id_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX user_id_idx ON friends USING btree (friend_user_id);
 
 
 --
 --
 
 CREATE INDEX user_id_idx ON friends USING btree (friend_user_id);
 
 
 --
--- Name: user_openid_url_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: user_roles_id_role_unique; Type: INDEX; Schema: public; Owner: -
 --
 
 --
 
-CREATE UNIQUE INDEX user_openid_url_idx ON users USING btree (openid_url);
+CREATE UNIQUE INDEX user_roles_id_role_unique ON user_roles USING btree (user_id, role);
 
 
 --
 
 
 --
--- Name: user_roles_id_role_unique; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: user_tokens_token_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 --
 
-CREATE UNIQUE INDEX user_roles_id_role_unique ON user_roles USING btree (user_id, role);
+CREATE UNIQUE INDEX user_tokens_token_idx ON user_tokens USING btree (token);
 
 
 --
 
 
 --
--- Name: user_tokens_token_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: user_tokens_user_id_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 --
 
-CREATE UNIQUE INDEX user_tokens_token_idx ON user_tokens USING btree (token);
+CREATE INDEX user_tokens_user_id_idx ON user_tokens USING btree (user_id);
 
 
 --
 
 
 --
--- Name: user_tokens_user_id_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: users_auth_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 --
 
-CREATE INDEX user_tokens_user_id_idx ON user_tokens USING btree (user_id);
+CREATE UNIQUE INDEX users_auth_idx ON users USING btree (auth_provider, auth_uid);
 
 
 --
 
 
 --
--- Name: users_display_name_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: users_display_name_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE UNIQUE INDEX users_display_name_idx ON users USING btree (display_name);
 
 
 --
 --
 
 CREATE UNIQUE INDEX users_display_name_idx ON users USING btree (display_name);
 
 
 --
--- Name: users_display_name_lower_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: users_display_name_lower_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX users_display_name_lower_idx ON users USING btree (lower((display_name)::text));
 
 
 --
 --
 
 CREATE INDEX users_display_name_lower_idx ON users USING btree (lower((display_name)::text));
 
 
 --
--- Name: users_email_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: users_email_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE UNIQUE INDEX users_email_idx ON users USING btree (email);
 
 
 --
 --
 
 CREATE UNIQUE INDEX users_email_idx ON users USING btree (email);
 
 
 --
--- Name: users_email_lower_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: users_email_lower_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX users_email_lower_idx ON users USING btree (lower((email)::text));
 
 
 --
 --
 
 CREATE INDEX users_email_lower_idx ON users USING btree (lower((email)::text));
 
 
 --
--- Name: way_nodes_node_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: way_nodes_node_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX way_nodes_node_idx ON way_nodes USING btree (node_id);
 
 
 --
 --
 
 CREATE INDEX way_nodes_node_idx ON way_nodes USING btree (node_id);
 
 
 --
--- Name: ways_changeset_id_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: ways_changeset_id_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX ways_changeset_id_idx ON ways USING btree (changeset_id);
 
 
 --
 --
 
 CREATE INDEX ways_changeset_id_idx ON ways USING btree (changeset_id);
 
 
 --
--- Name: ways_timestamp_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+-- Name: ways_timestamp_idx; Type: INDEX; Schema: public; Owner: -
 --
 
 CREATE INDEX ways_timestamp_idx ON ways USING btree ("timestamp");
 --
 
 CREATE INDEX ways_timestamp_idx ON ways USING btree ("timestamp");
@@ -2180,6 +2271,22 @@ ALTER TABLE ONLY diary_entries
     ADD CONSTRAINT diary_entries_user_id_fkey FOREIGN KEY (user_id) REFERENCES users(id);
 
 
     ADD CONSTRAINT diary_entries_user_id_fkey FOREIGN KEY (user_id) REFERENCES users(id);
 
 
+--
+-- Name: diary_entry_subscriptions_diary_entry_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY diary_entry_subscriptions
+    ADD CONSTRAINT diary_entry_subscriptions_diary_entry_id_fkey FOREIGN KEY (diary_entry_id) REFERENCES diary_entries(id);
+
+
+--
+-- Name: diary_entry_subscriptions_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY diary_entry_subscriptions
+    ADD CONSTRAINT diary_entry_subscriptions_user_id_fkey FOREIGN KEY (user_id) REFERENCES users(id);
+
+
 --
 -- Name: friends_friend_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
 --
 --
 -- Name: friends_friend_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
 --
@@ -2424,185 +2531,103 @@ ALTER TABLE ONLY ways
 -- PostgreSQL database dump complete
 --
 
 -- PostgreSQL database dump complete
 --
 
-SET search_path TO "$user",public;
-
-INSERT INTO schema_migrations (version) VALUES ('1');
-
-INSERT INTO schema_migrations (version) VALUES ('10');
-
-INSERT INTO schema_migrations (version) VALUES ('11');
-
-INSERT INTO schema_migrations (version) VALUES ('12');
-
-INSERT INTO schema_migrations (version) VALUES ('13');
-
-INSERT INTO schema_migrations (version) VALUES ('14');
-
-INSERT INTO schema_migrations (version) VALUES ('15');
-
-INSERT INTO schema_migrations (version) VALUES ('16');
-
-INSERT INTO schema_migrations (version) VALUES ('17');
-
-INSERT INTO schema_migrations (version) VALUES ('18');
-
-INSERT INTO schema_migrations (version) VALUES ('19');
-
-INSERT INTO schema_migrations (version) VALUES ('2');
-
-INSERT INTO schema_migrations (version) VALUES ('20');
-
-INSERT INTO schema_migrations (version) VALUES ('20100513171259');
-
-INSERT INTO schema_migrations (version) VALUES ('20100516124737');
-
-INSERT INTO schema_migrations (version) VALUES ('20100910084426');
-
-INSERT INTO schema_migrations (version) VALUES ('20101114011429');
-
-INSERT INTO schema_migrations (version) VALUES ('20110322001319');
-
-INSERT INTO schema_migrations (version) VALUES ('20110508145337');
-
-INSERT INTO schema_migrations (version) VALUES ('20110521142405');
-
-INSERT INTO schema_migrations (version) VALUES ('20110925112722');
-
-INSERT INTO schema_migrations (version) VALUES ('20111116184519');
-
-INSERT INTO schema_migrations (version) VALUES ('20111212183945');
-
-INSERT INTO schema_migrations (version) VALUES ('20120123184321');
-
-INSERT INTO schema_migrations (version) VALUES ('20120208122334');
-
-INSERT INTO schema_migrations (version) VALUES ('20120208194454');
-
-INSERT INTO schema_migrations (version) VALUES ('20120214210114');
-
-INSERT INTO schema_migrations (version) VALUES ('20120219161649');
-
-INSERT INTO schema_migrations (version) VALUES ('20120318201948');
-
-INSERT INTO schema_migrations (version) VALUES ('20120328090602');
-
-INSERT INTO schema_migrations (version) VALUES ('20120404205604');
-
-INSERT INTO schema_migrations (version) VALUES ('20120808231205');
-
-INSERT INTO schema_migrations (version) VALUES ('20121005195010');
-
-INSERT INTO schema_migrations (version) VALUES ('20121012044047');
-
-INSERT INTO schema_migrations (version) VALUES ('20121119165817');
-
-INSERT INTO schema_migrations (version) VALUES ('20121202155309');
-
-INSERT INTO schema_migrations (version) VALUES ('20121203124841');
-
-INSERT INTO schema_migrations (version) VALUES ('20130328184137');
-
-INSERT INTO schema_migrations (version) VALUES ('20131212124700');
-
-INSERT INTO schema_migrations (version) VALUES ('20140115192822');
-
-INSERT INTO schema_migrations (version) VALUES ('20140117185510');
-
-INSERT INTO schema_migrations (version) VALUES ('20140210003018');
-
-INSERT INTO schema_migrations (version) VALUES ('20140507110937');
-
-INSERT INTO schema_migrations (version) VALUES ('20140519141742');
-
-INSERT INTO schema_migrations (version) VALUES ('20150110152606');
-
-INSERT INTO schema_migrations (version) VALUES ('20150111192335');
-
-INSERT INTO schema_migrations (version) VALUES ('21');
-
-INSERT INTO schema_migrations (version) VALUES ('22');
-
-INSERT INTO schema_migrations (version) VALUES ('23');
-
-INSERT INTO schema_migrations (version) VALUES ('24');
-
-INSERT INTO schema_migrations (version) VALUES ('25');
-
-INSERT INTO schema_migrations (version) VALUES ('26');
-
-INSERT INTO schema_migrations (version) VALUES ('27');
-
-INSERT INTO schema_migrations (version) VALUES ('28');
-
-INSERT INTO schema_migrations (version) VALUES ('29');
-
-INSERT INTO schema_migrations (version) VALUES ('3');
-
-INSERT INTO schema_migrations (version) VALUES ('30');
-
-INSERT INTO schema_migrations (version) VALUES ('31');
-
-INSERT INTO schema_migrations (version) VALUES ('32');
-
-INSERT INTO schema_migrations (version) VALUES ('33');
-
-INSERT INTO schema_migrations (version) VALUES ('34');
-
-INSERT INTO schema_migrations (version) VALUES ('35');
-
-INSERT INTO schema_migrations (version) VALUES ('36');
-
-INSERT INTO schema_migrations (version) VALUES ('37');
-
-INSERT INTO schema_migrations (version) VALUES ('38');
-
-INSERT INTO schema_migrations (version) VALUES ('39');
-
-INSERT INTO schema_migrations (version) VALUES ('4');
-
-INSERT INTO schema_migrations (version) VALUES ('40');
-
-INSERT INTO schema_migrations (version) VALUES ('41');
-
-INSERT INTO schema_migrations (version) VALUES ('42');
-
-INSERT INTO schema_migrations (version) VALUES ('43');
-
-INSERT INTO schema_migrations (version) VALUES ('44');
-
-INSERT INTO schema_migrations (version) VALUES ('45');
-
-INSERT INTO schema_migrations (version) VALUES ('46');
-
-INSERT INTO schema_migrations (version) VALUES ('47');
-
-INSERT INTO schema_migrations (version) VALUES ('48');
-
-INSERT INTO schema_migrations (version) VALUES ('49');
-
-INSERT INTO schema_migrations (version) VALUES ('5');
-
-INSERT INTO schema_migrations (version) VALUES ('50');
-
-INSERT INTO schema_migrations (version) VALUES ('51');
-
-INSERT INTO schema_migrations (version) VALUES ('52');
-
-INSERT INTO schema_migrations (version) VALUES ('53');
-
-INSERT INTO schema_migrations (version) VALUES ('54');
-
-INSERT INTO schema_migrations (version) VALUES ('55');
-
-INSERT INTO schema_migrations (version) VALUES ('56');
-
-INSERT INTO schema_migrations (version) VALUES ('57');
-
-INSERT INTO schema_migrations (version) VALUES ('6');
-
-INSERT INTO schema_migrations (version) VALUES ('7');
-
-INSERT INTO schema_migrations (version) VALUES ('8');
+SET search_path TO "$user", public;
+
+INSERT INTO "schema_migrations" (version) VALUES
+('1'),
+('10'),
+('11'),
+('12'),
+('13'),
+('14'),
+('15'),
+('16'),
+('17'),
+('18'),
+('19'),
+('2'),
+('20'),
+('20100513171259'),
+('20100516124737'),
+('20100910084426'),
+('20101114011429'),
+('20110322001319'),
+('20110508145337'),
+('20110521142405'),
+('20110925112722'),
+('20111116184519'),
+('20111212183945'),
+('20120123184321'),
+('20120208122334'),
+('20120208194454'),
+('20120214210114'),
+('20120219161649'),
+('20120318201948'),
+('20120328090602'),
+('20120404205604'),
+('20120808231205'),
+('20121005195010'),
+('20121012044047'),
+('20121119165817'),
+('20121202155309'),
+('20121203124841'),
+('20130328184137'),
+('20131212124700'),
+('20140115192822'),
+('20140117185510'),
+('20140210003018'),
+('20140507110937'),
+('20140519141742'),
+('20150110152606'),
+('20150111192335'),
+('20150222101847'),
+('20150818224516'),
+('20161002153425'),
+('20161011010929'),
+('20170222134109'),
+('21'),
+('22'),
+('23'),
+('24'),
+('25'),
+('26'),
+('27'),
+('28'),
+('29'),
+('3'),
+('30'),
+('31'),
+('32'),
+('33'),
+('34'),
+('35'),
+('36'),
+('37'),
+('38'),
+('39'),
+('4'),
+('40'),
+('41'),
+('42'),
+('43'),
+('44'),
+('45'),
+('46'),
+('47'),
+('48'),
+('49'),
+('5'),
+('50'),
+('51'),
+('52'),
+('53'),
+('54'),
+('55'),
+('56'),
+('57'),
+('6'),
+('7'),
+('8'),
+('9');
 
 
-INSERT INTO schema_migrations (version) VALUES ('9');