aboutsummaryrefslogtreecommitdiff
path: root/src/main/resources/db
diff options
context:
space:
mode:
authorGravatar Vitaly Takmazov2023-01-27 17:50:14 +0300
committerGravatar Vitaly Takmazov2023-01-27 19:05:25 +0300
commit2db415ce42fb96059b6d7fce4cf4ce078a62680e (patch)
tree06d21a8483e437ad4d62f337b70e7e93dba18cc6 /src/main/resources/db
parentb3a169844b43d64aba4c1f7c583073b5dc54cf49 (diff)
baseline non-production databases to 1.36
Diffstat (limited to 'src/main/resources/db')
-rw-r--r--src/main/resources/db/migration/V1.22__schema.sql1338
-rw-r--r--src/main/resources/db/migration/V1.24__fix_lastmessage.sql (renamed from src/main/resources/db/specific/postgresql/V1.24__fix_lastmessage.sql)0
-rw-r--r--src/main/resources/db/migration/V1.25__update_tokens_size.sql (renamed from src/main/resources/db/specific/h2/V1.25__update_tokens_size.sql)0
-rw-r--r--src/main/resources/db/migration/V1.26__case_insensitive_nick.sql (renamed from src/main/resources/db/specific/postgresql/V1.26__case_insensitive_nick.sql)0
-rw-r--r--src/main/resources/db/migration/V1.27__followers_unique.sql (renamed from src/main/resources/db/specific/postgresql/V1.27__followers_unique.sql)0
-rw-r--r--src/main/resources/db/migration/V1.35__case_insensitive_email_jid.sql (renamed from src/main/resources/db/specific/postgresql/V1.35__case_insensitive_email_jid.sql)0
-rw-r--r--src/main/resources/db/migration/V1.36__web_tokens.sql (renamed from src/main/resources/db/specific/postgresql/V1.36__web_tokens.sql)0
-rw-r--r--src/main/resources/db/specific/h2/V1.22__schema.sql372
-rw-r--r--src/main/resources/db/specific/h2/V1.24__fix_lastmessage.sql2
-rw-r--r--src/main/resources/db/specific/h2/V1.26__case_insensitive_nick.sql1
-rw-r--r--src/main/resources/db/specific/h2/V1.27__followers_unique.sql1
-rw-r--r--src/main/resources/db/specific/h2/V1.35__case_insensitive_email_jid.sql2
-rw-r--r--src/main/resources/db/specific/mariadb/V1.24__fix_lastmessage.sql1
-rw-r--r--src/main/resources/db/specific/mariadb/V1.25__update_tokens_size.sql3
-rw-r--r--src/main/resources/db/specific/mariadb/V1.27__followers_unique.sql1
-rw-r--r--src/main/resources/db/specific/postgresql/V1.25__update_tokens_size.sql3
-rw-r--r--src/main/resources/db/specific/sqlite/V1.22__schema.sql377
17 files changed, 1338 insertions, 763 deletions
diff --git a/src/main/resources/db/migration/V1.22__schema.sql b/src/main/resources/db/migration/V1.22__schema.sql
new file mode 100644
index 00000000..aab050a6
--- /dev/null
+++ b/src/main/resources/db/migration/V1.22__schema.sql
@@ -0,0 +1,1338 @@
+--
+-- PostgreSQL database dump
+--
+
+-- Dumped from database version 15.1 (Debian 15.1-1.pgdg110+1)
+-- Dumped by pg_dump version 15.1 (Debian 15.1-1.pgdg110+1)
+
+SET statement_timeout = 0;
+SET lock_timeout = 0;
+SET idle_in_transaction_session_timeout = 0;
+SET client_encoding = 'UTF8';
+SET standard_conforming_strings = on;
+SELECT pg_catalog.set_config('search_path', 'public', false);
+SET check_function_bodies = false;
+SET xmloption = content;
+SET client_min_messages = warning;
+SET row_security = off;
+
+--
+-- Name: case_insensitive; Type: COLLATION; Schema: public; Owner: juick
+--
+
+CREATE COLLATION public.case_insensitive (provider = icu, deterministic = false, locale = 'und-u-ks-level2');
+
+
+ALTER COLLATION public.case_insensitive OWNER TO juick;
+
+--
+-- Name: pgcrypto; Type: EXTENSION; Schema: -; Owner: -
+--
+
+CREATE EXTENSION IF NOT EXISTS pgcrypto WITH SCHEMA public;
+
+
+--
+-- Name: EXTENSION pgcrypto; Type: COMMENT; Schema: -; Owner:
+--
+
+COMMENT ON EXTENSION pgcrypto IS 'cryptographic functions';
+
+
+--
+-- Name: auth_protocol; Type: TYPE; Schema: public; Owner: juick
+--
+
+CREATE TYPE public.auth_protocol AS ENUM (
+ 'xmpp',
+ 'email',
+ 'sms'
+);
+
+
+ALTER TYPE public.auth_protocol OWNER TO juick;
+
+--
+-- Name: messages_attach; Type: TYPE; Schema: public; Owner: juick
+--
+
+CREATE TYPE public.messages_attach AS ENUM (
+ 'jpg',
+ 'mp4',
+ 'png'
+);
+
+
+ALTER TYPE public.messages_attach OWNER TO juick;
+
+--
+-- Name: messages_lang; Type: TYPE; Schema: public; Owner: juick
+--
+
+CREATE TYPE public.messages_lang AS ENUM (
+ 'en',
+ 'ru',
+ 'fr',
+ 'fa',
+ '__'
+);
+
+
+ALTER TYPE public.messages_lang OWNER TO juick;
+
+--
+-- Name: users_lang; Type: TYPE; Schema: public; Owner: juick
+--
+
+CREATE TYPE public.users_lang AS ENUM (
+ 'en',
+ 'ru',
+ 'fr',
+ 'fa',
+ '__'
+);
+
+
+ALTER TYPE public.users_lang OWNER TO juick;
+
+--
+-- Name: CAST (character varying AS public.messages_attach); Type: CAST; Schema: -; Owner: -
+--
+
+CREATE CAST (character varying AS public.messages_attach) WITH INOUT AS ASSIGNMENT;
+
+
+SET default_tablespace = '';
+
+SET default_table_access_method = heap;
+
+--
+-- Name: android; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.android (
+ user_id bigint NOT NULL,
+ regid character varying(255) NOT NULL,
+ ts timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.android OWNER TO juick;
+
+--
+-- Name: auth; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.auth (
+ user_id bigint,
+ protocol public.auth_protocol NOT NULL,
+ account character varying(128) NOT NULL,
+ authcode character varying(8) NOT NULL,
+ ts timestamp(6) without time zone DEFAULT CURRENT_TIMESTAMP NOT NULL
+);
+
+
+ALTER TABLE public.auth OWNER TO juick;
+
+--
+-- Name: bl_tags; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.bl_tags (
+ user_id bigint NOT NULL,
+ tag_id bigint NOT NULL
+);
+
+
+ALTER TABLE public.bl_tags OWNER TO juick;
+
+--
+-- Name: bl_users; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.bl_users (
+ user_id bigint NOT NULL,
+ bl_user_id bigint NOT NULL,
+ ts timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.bl_users OWNER TO juick;
+
+--
+-- Name: emails; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.emails (
+ user_id bigint NOT NULL,
+ email character varying(128) NOT NULL,
+ subscr_hour smallint
+);
+
+
+ALTER TABLE public.emails OWNER TO juick;
+
+--
+-- Name: facebook; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.facebook (
+ user_id bigint,
+ fb_id numeric,
+ loginhash character varying(36),
+ access_token character varying(255),
+ ts timestamp with time zone DEFAULT now() NOT NULL,
+ fb_name character varying(64),
+ fb_link character varying(255) NOT NULL,
+ crosspost boolean DEFAULT true NOT NULL
+);
+
+
+ALTER TABLE public.facebook OWNER TO juick;
+
+--
+-- Name: favorites; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.favorites (
+ user_id bigint NOT NULL,
+ message_id bigint NOT NULL,
+ ts timestamp with time zone,
+ like_id smallint DEFAULT 1 NOT NULL,
+ user_uri character varying(255) NOT NULL DEFAULT ''::character varying
+);
+
+
+ALTER TABLE public.favorites OWNER TO juick;
+
+--
+-- Name: followers; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.followers (
+ user_id bigint,
+ ts timestamp with time zone DEFAULT now() NOT NULL,
+ acct character varying(64) NOT NULL
+);
+
+
+ALTER TABLE public.followers OWNER TO juick;
+
+--
+-- Name: images; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.images (
+ mid bigint NOT NULL,
+ rid bigint NOT NULL,
+ thumb bigint NOT NULL,
+ small bigint NOT NULL,
+ medium bigint NOT NULL,
+ height bigint NOT NULL,
+ width bigint NOT NULL
+);
+
+
+ALTER TABLE public.images OWNER TO juick;
+
+--
+-- Name: ios; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.ios (
+ user_id bigint NOT NULL,
+ token character varying(64) NOT NULL,
+ ts timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.ios OWNER TO juick;
+
+--
+-- Name: jids; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.jids (
+ user_id bigint,
+ jid character varying(64) NOT NULL,
+ active smallint DEFAULT 0 NOT NULL,
+ loginhash character varying(36),
+ ts timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.jids OWNER TO juick;
+
+--
+-- Name: logins; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.logins (
+ user_id bigint NOT NULL,
+ hash character varying(16) NOT NULL
+);
+
+
+ALTER TABLE public.logins OWNER TO juick;
+
+--
+-- Name: mail; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.mail (
+ user_id bigint NOT NULL,
+ hash character varying(16) NOT NULL,
+ ts timestamp(6) without time zone DEFAULT CURRENT_TIMESTAMP NOT NULL
+);
+
+
+ALTER TABLE public.mail OWNER TO juick;
+
+--
+-- Name: meon; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.meon (
+ id bigint NOT NULL,
+ user_id bigint NOT NULL,
+ link character varying(255) NOT NULL,
+ name character varying(32) NOT NULL,
+ ico smallint
+);
+
+
+ALTER TABLE public.meon OWNER TO juick;
+
+--
+-- Name: meon_id_seq; Type: SEQUENCE; Schema: public; Owner: juick
+--
+
+CREATE SEQUENCE public.meon_id_seq
+ START WITH 1
+ INCREMENT BY 1
+ NO MINVALUE
+ NO MAXVALUE
+ CACHE 1;
+
+
+ALTER TABLE public.meon_id_seq OWNER TO juick;
+
+--
+-- Name: meon_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: juick
+--
+
+ALTER SEQUENCE public.meon_id_seq OWNED BY public.meon.id;
+
+
+--
+-- Name: messages; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.messages (
+ message_id bigint NOT NULL,
+ user_id bigint NOT NULL,
+ lang public.messages_lang DEFAULT '__'::public.messages_lang NOT NULL,
+ ts timestamp with time zone DEFAULT now() NOT NULL,
+ replies smallint DEFAULT (0)::smallint NOT NULL,
+ maxreplyid smallint DEFAULT (0)::smallint NOT NULL,
+ privacy smallint DEFAULT (1)::smallint NOT NULL,
+ readonly boolean DEFAULT false NOT NULL,
+ attach public.messages_attach,
+ place_id bigint,
+ lat numeric(10,7),
+ lon numeric(10,7),
+ popular smallint DEFAULT (0)::smallint NOT NULL,
+ hidden smallint DEFAULT (0)::smallint NOT NULL,
+ likes smallint DEFAULT (0)::smallint NOT NULL,
+ updated timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.messages OWNER TO juick;
+
+--
+-- Name: messages_access; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.messages_access (
+ message_id bigint NOT NULL,
+ user_id bigint NOT NULL
+);
+
+
+ALTER TABLE public.messages_access OWNER TO juick;
+
+--
+-- Name: messages_message_id_seq; Type: SEQUENCE; Schema: public; Owner: juick
+--
+
+CREATE SEQUENCE public.messages_message_id_seq
+ START WITH 1
+ INCREMENT BY 1
+ NO MINVALUE
+ NO MAXVALUE
+ CACHE 1;
+
+
+ALTER TABLE public.messages_message_id_seq OWNER TO juick;
+
+--
+-- Name: messages_message_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: juick
+--
+
+ALTER SEQUENCE public.messages_message_id_seq OWNED BY public.messages.message_id;
+
+
+--
+-- Name: messages_properties; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.messages_properties (
+ message_id bigint NOT NULL,
+ reply_id smallint NOT NULL,
+ property_key character varying(255) NOT NULL,
+ property_value text NOT NULL
+);
+
+
+ALTER TABLE public.messages_properties OWNER TO juick;
+
+--
+-- Name: messages_tags; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.messages_tags (
+ message_id bigint NOT NULL,
+ tag_id bigint NOT NULL
+);
+
+
+ALTER TABLE public.messages_tags OWNER TO juick;
+
+--
+-- Name: messages_txt; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.messages_txt (
+ message_id bigint NOT NULL,
+ repliesby text,
+ txt text NOT NULL,
+ updated_at timestamp without time zone DEFAULT CURRENT_TIMESTAMP NOT NULL
+);
+
+
+ALTER TABLE public.messages_txt OWNER TO juick;
+
+CREATE INDEX messages_idx ON messages_txt USING GIN (to_tsvector('russian', txt));
+
+--
+-- Name: places; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.places (
+ place_id bigint NOT NULL,
+ lat numeric(10,7) NOT NULL,
+ lon numeric(10,7) NOT NULL,
+ name character varying(64) NOT NULL,
+ descr character varying(255),
+ url character varying(128),
+ user_id bigint NOT NULL,
+ ts timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.places OWNER TO juick;
+
+--
+-- Name: places_place_id_seq; Type: SEQUENCE; Schema: public; Owner: juick
+--
+
+CREATE SEQUENCE public.places_place_id_seq
+ START WITH 1
+ INCREMENT BY 1
+ NO MINVALUE
+ NO MAXVALUE
+ CACHE 1;
+
+
+ALTER TABLE public.places_place_id_seq OWNER TO juick;
+
+--
+-- Name: places_place_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: juick
+--
+
+ALTER SEQUENCE public.places_place_id_seq OWNED BY public.places.place_id;
+
+
+--
+-- Name: places_tags; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.places_tags (
+ place_id bigint NOT NULL,
+ tag_id bigint NOT NULL
+);
+
+
+ALTER TABLE public.places_tags OWNER TO juick;
+
+--
+-- Name: pm; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.pm (
+ user_id bigint NOT NULL,
+ user_id_to bigint NOT NULL,
+ ts timestamp with time zone DEFAULT now() NOT NULL,
+ txt text NOT NULL
+);
+
+
+ALTER TABLE public.pm OWNER TO juick;
+
+--
+-- Name: pm_inroster; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.pm_inroster (
+ user_id bigint NOT NULL,
+ jid character varying(64) NOT NULL
+);
+
+
+ALTER TABLE public.pm_inroster OWNER TO juick;
+
+--
+-- Name: reactions; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.reactions (
+ like_id smallint NOT NULL,
+ description character varying(100) NOT NULL
+);
+
+
+ALTER TABLE public.reactions OWNER TO juick;
+
+--
+-- Name: replies; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.replies (
+ message_id bigint NOT NULL,
+ reply_id smallint NOT NULL,
+ user_id bigint NOT NULL,
+ replyto smallint DEFAULT (0)::smallint NOT NULL,
+ ts timestamp with time zone DEFAULT now() NOT NULL,
+ attach public.messages_attach,
+ txt text NOT NULL,
+ updated_at timestamp without time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
+ user_uri character varying(255) DEFAULT NULL::character varying,
+ reply_uri character varying(255) DEFAULT NULL::character varying,
+ html smallint DEFAULT '0'::smallint NOT NULL
+);
+
+
+ALTER TABLE public.replies OWNER TO juick;
+
+--
+-- Name: sphinx; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.sphinx (
+ counter_id smallint NOT NULL,
+ max_id bigint NOT NULL
+);
+
+
+ALTER TABLE public.sphinx OWNER TO juick;
+
+--
+-- Name: subscr_messages; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.subscr_messages (
+ message_id bigint NOT NULL,
+ suser_id bigint NOT NULL,
+ last_read_rid smallint DEFAULT 0 NOT NULL
+);
+
+
+ALTER TABLE public.subscr_messages OWNER TO juick;
+
+--
+-- Name: subscr_tags; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.subscr_tags (
+ tag_id bigint NOT NULL,
+ suser_id bigint NOT NULL
+);
+
+
+ALTER TABLE public.subscr_tags OWNER TO juick;
+
+--
+-- Name: subscr_users; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.subscr_users (
+ user_id bigint NOT NULL,
+ suser_id bigint NOT NULL,
+ ts timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.subscr_users OWNER TO juick;
+
+--
+-- Name: tags; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.tags (
+ tag_id bigint NOT NULL,
+ synonym_id bigint,
+ name character varying(70) COLLATE public.case_insensitive,
+ top boolean DEFAULT false NOT NULL,
+ noindex boolean DEFAULT false NOT NULL,
+ stat_messages bigint DEFAULT (0)::bigint NOT NULL,
+ stat_users smallint DEFAULT (0)::smallint NOT NULL
+);
+
+
+ALTER TABLE public.tags OWNER TO juick;
+
+--
+-- Name: tags_ignore; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.tags_ignore (
+ tag_id bigint NOT NULL
+);
+
+
+ALTER TABLE public.tags_ignore OWNER TO juick;
+
+--
+-- Name: tags_synonyms; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.tags_synonyms (
+ name character varying(64) NOT NULL,
+ changeto character varying(64) NOT NULL
+);
+
+
+ALTER TABLE public.tags_synonyms OWNER TO juick;
+
+--
+-- Name: tags_tag_id_seq; Type: SEQUENCE; Schema: public; Owner: juick
+--
+
+CREATE SEQUENCE public.tags_tag_id_seq
+ START WITH 1
+ INCREMENT BY 1
+ NO MINVALUE
+ NO MAXVALUE
+ CACHE 1;
+
+
+ALTER TABLE public.tags_tag_id_seq OWNER TO juick;
+
+--
+-- Name: tags_tag_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: juick
+--
+
+ALTER SEQUENCE public.tags_tag_id_seq OWNED BY public.tags.tag_id;
+
+
+--
+-- Name: telegram; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.telegram (
+ user_id bigint,
+ tg_id numeric NOT NULL,
+ tg_name character varying(64) NOT NULL,
+ ts timestamp with time zone DEFAULT now() NOT NULL,
+ loginhash character varying(36)
+);
+
+
+ALTER TABLE public.telegram OWNER TO juick;
+
+--
+-- Name: top_ignore_messages; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.top_ignore_messages (
+ message_id bigint NOT NULL
+);
+
+
+ALTER TABLE public.top_ignore_messages OWNER TO juick;
+
+--
+-- Name: top_ignore_tags; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.top_ignore_tags (
+ tag_id bigint NOT NULL
+);
+
+
+ALTER TABLE public.top_ignore_tags OWNER TO juick;
+
+--
+-- Name: top_ignore_users; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.top_ignore_users (
+ user_id bigint NOT NULL
+);
+
+
+ALTER TABLE public.top_ignore_users OWNER TO juick;
+
+--
+-- Name: twitter; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.twitter (
+ user_id bigint NOT NULL,
+ access_token character varying(64) NOT NULL,
+ access_token_secret character varying(64) NOT NULL,
+ uname character varying(64) NOT NULL,
+ ts timestamp with time zone DEFAULT now() NOT NULL,
+ crosspost boolean DEFAULT true NOT NULL
+);
+
+
+ALTER TABLE public.twitter OWNER TO juick;
+
+--
+-- Name: useroptions; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.useroptions (
+ user_id bigint NOT NULL,
+ jnotify smallint DEFAULT 1 NOT NULL,
+ subscr_active smallint DEFAULT 1 NOT NULL,
+ off_ts timestamp with time zone,
+ xmppxhtml smallint DEFAULT 0 NOT NULL,
+ subscr_notify smallint DEFAULT 1 NOT NULL,
+ recommendations smallint DEFAULT 1 NOT NULL,
+ privacy_view smallint DEFAULT 1 NOT NULL,
+ privacy_reply smallint DEFAULT 1 NOT NULL,
+ privacy_pm smallint DEFAULT 1 NOT NULL,
+ repliesview smallint DEFAULT 0 NOT NULL
+);
+
+
+ALTER TABLE public.useroptions OWNER TO juick;
+
+--
+-- Name: users; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.users (
+ id bigint NOT NULL,
+ nick character varying(64) NOT NULL,
+ passw character varying(32) NOT NULL,
+ lang public.users_lang DEFAULT '__'::public.users_lang NOT NULL,
+ banned smallint DEFAULT (0)::smallint NOT NULL,
+ lastmessage timestamp with time zone,
+ lastpm bigint DEFAULT (0)::bigint NOT NULL,
+ lastphoto bigint DEFAULT (0)::bigint NOT NULL,
+ karma smallint DEFAULT (0)::smallint NOT NULL,
+ last_seen timestamp with time zone
+);
+
+
+ALTER TABLE public.users OWNER TO juick;
+
+--
+-- Name: users_id_seq; Type: SEQUENCE; Schema: public; Owner: juick
+--
+
+CREATE SEQUENCE public.users_id_seq
+ START WITH 1
+ INCREMENT BY 1
+ NO MINVALUE
+ NO MAXVALUE
+ CACHE 1;
+
+
+ALTER TABLE public.users_id_seq OWNER TO juick;
+
+--
+-- Name: users_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: juick
+--
+
+ALTER SEQUENCE public.users_id_seq OWNED BY public.users.id;
+
+
+--
+-- Name: users_subscr; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.users_subscr (
+ user_id bigint NOT NULL,
+ cnt smallint DEFAULT (0)::smallint NOT NULL
+);
+
+
+ALTER TABLE public.users_subscr OWNER TO juick;
+
+--
+-- Name: usersinfo; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.usersinfo (
+ user_id bigint NOT NULL,
+ jid character varying(64),
+ fullname character varying(64),
+ country character varying(32),
+ url character varying(128),
+ gender character varying(32),
+ bday character varying(32),
+ descr text
+);
+
+
+ALTER TABLE public.usersinfo OWNER TO juick;
+
+--
+-- Name: version; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.version (
+ version numeric NOT NULL
+);
+
+
+ALTER TABLE public.version OWNER TO juick;
+
+--
+-- Name: vk; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.vk (
+ user_id bigint,
+ vk_id numeric NULL,
+ loginhash character varying(36),
+ access_token character varying(128) NOT NULL,
+ ts timestamp with time zone DEFAULT now() NOT NULL,
+ vk_name character varying(64) NOT NULL,
+ vk_link character varying(64) NOT NULL,
+ crosspost smallint DEFAULT (1)::smallint NOT NULL
+);
+
+
+ALTER TABLE public.vk OWNER TO juick;
+
+--
+-- Name: winphone; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.winphone (
+ user_id bigint NOT NULL,
+ url character varying(255) NOT NULL,
+ ts timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.winphone OWNER TO juick;
+
+--
+-- Name: wl_users; Type: TABLE; Schema: public; Owner: juick
+--
+
+CREATE TABLE public.wl_users (
+ user_id bigint NOT NULL,
+ wl_user_id bigint NOT NULL
+);
+
+
+ALTER TABLE public.wl_users OWNER TO juick;
+
+--
+-- Name: meon id; Type: DEFAULT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.meon ALTER COLUMN id SET DEFAULT nextval('public.meon_id_seq'::regclass);
+
+
+--
+-- Name: messages message_id; Type: DEFAULT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.messages ALTER COLUMN message_id SET DEFAULT nextval('public.messages_message_id_seq'::regclass);
+
+
+--
+-- Name: places place_id; Type: DEFAULT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.places ALTER COLUMN place_id SET DEFAULT nextval('public.places_place_id_seq'::regclass);
+
+
+--
+-- Name: tags tag_id; Type: DEFAULT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.tags ALTER COLUMN tag_id SET DEFAULT nextval('public.tags_tag_id_seq'::regclass);
+
+
+--
+-- Name: users id; Type: DEFAULT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.users ALTER COLUMN id SET DEFAULT nextval('public.users_id_seq'::regclass);
+
+
+--
+-- Name: images idx_20438_primary; Type: CONSTRAINT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.images
+ ADD CONSTRAINT idx_20438_primary PRIMARY KEY (mid, rid);
+
+
+--
+-- Name: mail idx_20453_primary; Type: CONSTRAINT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.mail
+ ADD CONSTRAINT idx_20453_primary PRIMARY KEY (user_id);
+
+
+--
+-- Name: meon idx_20458_primary; Type: CONSTRAINT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.meon
+ ADD CONSTRAINT idx_20458_primary PRIMARY KEY (id);
+
+
+--
+-- Name: messages idx_20483_primary; Type: CONSTRAINT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.messages
+ ADD CONSTRAINT idx_20483_primary PRIMARY KEY (message_id);
+
+
+--
+-- Name: messages_txt idx_20502_primary; Type: CONSTRAINT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.messages_txt
+ ADD CONSTRAINT idx_20502_primary PRIMARY KEY (message_id);
+
+
+--
+-- Name: places idx_20514_primary; Type: CONSTRAINT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.places
+ ADD CONSTRAINT idx_20514_primary PRIMARY KEY (place_id);
+
+
+--
+-- Name: sphinx idx_20571_primary; Type: CONSTRAINT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.sphinx
+ ADD CONSTRAINT idx_20571_primary PRIMARY KEY (counter_id);
+
+
+--
+-- Name: tags idx_20586_primary; Type: CONSTRAINT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.tags
+ ADD CONSTRAINT idx_20586_primary PRIMARY KEY (tag_id);
+
+
+--
+-- Name: top_ignore_tags idx_20616_primary; Type: CONSTRAINT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.top_ignore_tags
+ ADD CONSTRAINT idx_20616_primary PRIMARY KEY (tag_id);
+
+
+--
+-- Name: top_ignore_users idx_20619_primary; Type: CONSTRAINT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.top_ignore_users
+ ADD CONSTRAINT idx_20619_primary PRIMARY KEY (user_id);
+
+
+--
+-- Name: twitter idx_20622_primary; Type: CONSTRAINT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.twitter
+ ADD CONSTRAINT idx_20622_primary PRIMARY KEY (user_id);
+
+
+--
+-- Name: useroptions idx_20627_primary; Type: CONSTRAINT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.useroptions
+ ADD CONSTRAINT idx_20627_primary PRIMARY KEY (user_id);
+
+
+--
+-- Name: users idx_20653_primary; Type: CONSTRAINT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.users
+ ADD CONSTRAINT idx_20653_primary PRIMARY KEY (id);
+
+
+--
+-- Name: usersinfo idx_20663_primary; Type: CONSTRAINT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.usersinfo
+ ADD CONSTRAINT idx_20663_primary PRIMARY KEY (user_id);
+
+
+--
+-- Name: users_subscr idx_20672_primary; Type: CONSTRAINT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.users_subscr
+ ADD CONSTRAINT idx_20672_primary PRIMARY KEY (user_id);
+
+
+--
+-- Name: wl_users idx_20694_primary; Type: CONSTRAINT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.wl_users
+ ADD CONSTRAINT idx_20694_primary PRIMARY KEY (user_id, wl_user_id);
+
+
+--
+-- Name: bl_users idx_29418_primary; Type: CONSTRAINT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.bl_users
+ ADD CONSTRAINT idx_29418_primary PRIMARY KEY (user_id, bl_user_id);
+
+
+--
+-- Name: messages_properties message_properties_key; Type: CONSTRAINT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.messages_properties
+ ADD CONSTRAINT message_properties_key UNIQUE (message_id, reply_id, property_key);
+
+
+--
+-- Name: reactions reactions_pkey; Type: CONSTRAINT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.reactions
+ ADD CONSTRAINT reactions_pkey PRIMARY KEY (like_id);
+
+
+--
+-- Name: idx_20390_regid; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE UNIQUE INDEX idx_20390_regid ON public.android USING btree (regid);
+
+
+--
+-- Name: idx_20390_user_id; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20390_user_id ON public.android USING btree (user_id);
+
+
+--
+-- Name: idx_20404_tag_id; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20404_tag_id ON public.bl_tags USING btree (tag_id);
+
+
+--
+-- Name: idx_20404_user_id; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20404_user_id ON public.bl_tags USING btree (user_id);
+
+
+--
+-- Name: idx_20418_email; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20418_email ON public.emails USING btree (email);
+
+
+--
+-- Name: idx_20421_user_id; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20421_user_id ON public.facebook USING btree (user_id);
+
+
+--
+-- Name: idx_20441_token; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE UNIQUE INDEX idx_20441_token ON public.ios USING btree (token);
+
+
+--
+-- Name: idx_20441_user_id; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20441_user_id ON public.ios USING btree (user_id);
+
+
+--
+-- Name: idx_20445_jid; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE UNIQUE INDEX idx_20445_jid ON public.jids USING btree (jid);
+
+
+--
+-- Name: idx_20445_user_id; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20445_user_id ON public.jids USING btree (user_id);
+
+
+--
+-- Name: idx_20450_user_id; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE UNIQUE INDEX idx_20450_user_id ON public.logins USING btree (user_id);
+
+
+--
+-- Name: idx_20483_attach; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20483_attach ON public.messages USING btree (attach);
+
+
+--
+-- Name: idx_20483_hidden; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20483_hidden ON public.messages USING btree (hidden);
+
+
+--
+-- Name: idx_20483_place_id; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20483_place_id ON public.messages USING btree (place_id);
+
+
+--
+-- Name: idx_20483_popular; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20483_popular ON public.messages USING btree (popular);
+
+
+--
+-- Name: idx_20483_ts; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20483_ts ON public.messages USING btree (ts);
+
+
+--
+-- Name: idx_20483_user_id; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20483_user_id ON public.messages USING btree (user_id);
+
+
+--
+-- Name: idx_20496_message_id; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20496_message_id ON public.messages_access USING btree (message_id);
+
+
+--
+-- Name: idx_20499_message_id; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20499_message_id ON public.messages_tags USING btree (message_id);
+
+
+--
+-- Name: idx_20499_message_id_2; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE UNIQUE INDEX idx_20499_message_id_2 ON public.messages_tags USING btree (message_id, tag_id);
+
+
+--
+-- Name: idx_20499_tag_id; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20499_tag_id ON public.messages_tags USING btree (tag_id);
+
+
+--
+-- Name: idx_20529_user_id; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20529_user_id ON public.pm_inroster USING btree (user_id);
+
+
+--
+-- Name: idx_20529_user_id_2; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE UNIQUE INDEX idx_20529_user_id_2 ON public.pm_inroster USING btree (user_id, jid);
+
+
+--
+-- Name: idx_20563_message_id; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20563_message_id ON public.replies USING btree (message_id);
+
+
+--
+-- Name: idx_20563_ts; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20563_ts ON public.replies USING btree (ts);
+
+
+--
+-- Name: idx_20563_user_id; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20563_user_id ON public.replies USING btree (user_id);
+
+
+--
+-- Name: idx_20574_message_id; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE UNIQUE INDEX idx_20574_message_id ON public.subscr_messages USING btree (message_id, suser_id);
+
+
+--
+-- Name: idx_20577_tag_id; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE UNIQUE INDEX idx_20577_tag_id ON public.subscr_tags USING btree (tag_id, suser_id);
+
+
+--
+-- Name: idx_20580_suser_id; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20580_suser_id ON public.subscr_users USING btree (suser_id);
+
+
+--
+-- Name: idx_20580_user_id; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE UNIQUE INDEX idx_20580_user_id ON public.subscr_users USING btree (user_id, suser_id);
+
+
+--
+-- Name: idx_20586_synonym_id; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20586_synonym_id ON public.tags USING btree (synonym_id);
+
+
+--
+-- Name: idx_20627_recommendations; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20627_recommendations ON public.useroptions USING btree (recommendations);
+
+
+--
+-- Name: idx_20653_nick; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE UNIQUE INDEX idx_20653_nick ON public.users USING btree (nick);
+
+
+--
+-- Name: idx_20682_user_id; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20682_user_id ON public.vk USING btree (user_id);
+
+
+--
+-- Name: idx_20690_url; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE UNIQUE INDEX idx_20690_url ON public.winphone USING btree (url);
+
+
+--
+-- Name: idx_20690_user_id; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_20690_user_id ON public.winphone USING btree (user_id);
+
+
+--
+-- Name: idx_29422_message_id; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_29422_message_id ON public.favorites USING btree (message_id);
+
+
+--
+-- Name: idx_29422_user_id; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX idx_29422_user_id ON public.favorites USING btree (user_id);
+
+
+--
+-- Name: reply_uri_index; Type: INDEX; Schema: public; Owner: juick
+--
+
+CREATE INDEX reply_uri_index ON public.replies USING btree (reply_uri);
+
+
+--
+-- Name: favorites favorites_like_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.favorites
+ ADD CONSTRAINT favorites_like_id_fkey FOREIGN KEY (like_id) REFERENCES public.reactions(like_id);
+
+
+--
+-- Name: followers followers_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: juick
+--
+
+ALTER TABLE ONLY public.followers
+ ADD CONSTRAINT followers_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
+
+
+--
+-- PostgreSQL database dump complete
+--
+
diff --git a/src/main/resources/db/specific/postgresql/V1.24__fix_lastmessage.sql b/src/main/resources/db/migration/V1.24__fix_lastmessage.sql
index ba3eee8c..ba3eee8c 100644
--- a/src/main/resources/db/specific/postgresql/V1.24__fix_lastmessage.sql
+++ b/src/main/resources/db/migration/V1.24__fix_lastmessage.sql
diff --git a/src/main/resources/db/specific/h2/V1.25__update_tokens_size.sql b/src/main/resources/db/migration/V1.25__update_tokens_size.sql
index a1c7bbac..a1c7bbac 100644
--- a/src/main/resources/db/specific/h2/V1.25__update_tokens_size.sql
+++ b/src/main/resources/db/migration/V1.25__update_tokens_size.sql
diff --git a/src/main/resources/db/specific/postgresql/V1.26__case_insensitive_nick.sql b/src/main/resources/db/migration/V1.26__case_insensitive_nick.sql
index a68c15f3..a68c15f3 100644
--- a/src/main/resources/db/specific/postgresql/V1.26__case_insensitive_nick.sql
+++ b/src/main/resources/db/migration/V1.26__case_insensitive_nick.sql
diff --git a/src/main/resources/db/specific/postgresql/V1.27__followers_unique.sql b/src/main/resources/db/migration/V1.27__followers_unique.sql
index 5a15d9ae..5a15d9ae 100644
--- a/src/main/resources/db/specific/postgresql/V1.27__followers_unique.sql
+++ b/src/main/resources/db/migration/V1.27__followers_unique.sql
diff --git a/src/main/resources/db/specific/postgresql/V1.35__case_insensitive_email_jid.sql b/src/main/resources/db/migration/V1.35__case_insensitive_email_jid.sql
index 93a987b8..93a987b8 100644
--- a/src/main/resources/db/specific/postgresql/V1.35__case_insensitive_email_jid.sql
+++ b/src/main/resources/db/migration/V1.35__case_insensitive_email_jid.sql
diff --git a/src/main/resources/db/specific/postgresql/V1.36__web_tokens.sql b/src/main/resources/db/migration/V1.36__web_tokens.sql
index ccdefad2..ccdefad2 100644
--- a/src/main/resources/db/specific/postgresql/V1.36__web_tokens.sql
+++ b/src/main/resources/db/migration/V1.36__web_tokens.sql
diff --git a/src/main/resources/db/specific/h2/V1.22__schema.sql b/src/main/resources/db/specific/h2/V1.22__schema.sql
deleted file mode 100644
index e616c943..00000000
--- a/src/main/resources/db/specific/h2/V1.22__schema.sql
+++ /dev/null
@@ -1,372 +0,0 @@
--- H2 2.1.214;
-SET DB_CLOSE_DELAY -1;
-
-CREATE MEMORY TABLE "PUBLIC"."ANDROID"(
- "USER_ID" INTEGER NOT NULL,
- "REGID" VARCHAR(1024) NOT NULL,
- "TS" TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.ANDROID;
-CREATE MEMORY TABLE "PUBLIC"."MAIL"(
- "USER_ID" INTEGER NOT NULL,
- "HASH" CHARACTER(16) NOT NULL,
- "TS" TIMESTAMP(6) DEFAULT CURRENT_TIMESTAMP NOT NULL
-);
-ALTER TABLE "PUBLIC"."MAIL" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_23" PRIMARY KEY("USER_ID");
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.MAIL;
-CREATE MEMORY TABLE "PUBLIC"."BL_TAGS"(
- "USER_ID" INTEGER NOT NULL,
- "TAG_ID" INTEGER NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.BL_TAGS;
-CREATE MEMORY TABLE "PUBLIC"."BL_USERS"(
- "USER_ID" INTEGER NOT NULL,
- "BL_USER_ID" INTEGER NOT NULL,
- "TS" TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL
-);
-ALTER TABLE "PUBLIC"."BL_USERS" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_2" PRIMARY KEY("USER_ID", "BL_USER_ID");
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.BL_USERS;
-CREATE MEMORY TABLE "PUBLIC"."REACTIONS"(
- "LIKE_ID" INTEGER NOT NULL,
- "DESCRIPTION" CHARACTER VARYING(100) NOT NULL
-);
-CREATE MEMORY TABLE "PUBLIC"."FAVORITES"(
- "USER_ID" INTEGER NOT NULL,
- "MESSAGE_ID" INTEGER NOT NULL,
- "TS" TIMESTAMP NOT NULL,
- "LIKE_ID" INTEGER,
- "USER_URI" VARCHAR(255) DEFAULT '' NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.FAVORITES;
-CREATE MEMORY TABLE "PUBLIC"."AUTH"(
- "USER_ID" INTEGER,
- "PROTOCOL" ENUM('xmpp', 'email', 'sms') NOT NULL,
- "ACCOUNT" CHARACTER(64) NOT NULL,
- "AUTHCODE" CHARACTER(8) NOT NULL,
- "TS" TIMESTAMP(6) DEFAULT CURRENT_TIMESTAMP NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.AUTH;
-CREATE MEMORY TABLE "PUBLIC"."IMAGES"(
- "MID" INTEGER NOT NULL,
- "RID" INTEGER NOT NULL,
- "THUMB" INTEGER NOT NULL,
- "SMALL" INTEGER NOT NULL,
- "MEDIUM" INTEGER NOT NULL,
- "HEIGHT" INTEGER NOT NULL,
- "WIDTH" INTEGER NOT NULL
-);
-ALTER TABLE "PUBLIC"."IMAGES" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_8" PRIMARY KEY("MID", "RID");
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.IMAGES;
-CREATE MEMORY TABLE "PUBLIC"."MESSAGES_PROPERTIES"(
- "MESSAGE_ID" INTEGER NOT NULL,
- "REPLY_ID" SMALLINT NOT NULL,
- "PROPERTY_KEY" CHARACTER VARYING(255) NOT NULL,
- "PROPERTY_VALUE" CHARACTER VARYING NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.MESSAGES_PROPERTIES;
-CREATE MEMORY TABLE "PUBLIC"."MEON"(
- "ID" INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 1) DEFAULT ON NULL NOT NULL,
- "USER_ID" INTEGER NOT NULL,
- "LINK" CHARACTER(255) NOT NULL,
- "NAME" CHARACTER(32) NOT NULL,
- "ICO" SMALLINT DEFAULT NULL
-);
-ALTER TABLE "PUBLIC"."MEON" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_24" PRIMARY KEY("ID");
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.MEON;
-CREATE MEMORY TABLE "PUBLIC"."MESSAGES_ACCESS"(
- "MESSAGE_ID" INTEGER NOT NULL,
- "USER_ID" INTEGER NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.MESSAGES_ACCESS;
-CREATE MEMORY TABLE "PUBLIC"."MESSAGES_TAGS"(
- "MESSAGE_ID" INTEGER NOT NULL,
- "TAG_ID" INTEGER NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.MESSAGES_TAGS;
-CREATE MEMORY TABLE "PUBLIC"."USEROPTIONS"(
- "USER_ID" INTEGER NOT NULL,
- "JNOTIFY" TINYINT DEFAULT '1' NOT NULL,
- "SUBSCR_ACTIVE" TINYINT DEFAULT '1' NOT NULL,
- "XMPPXHTML" TINYINT DEFAULT '0' NOT NULL,
- "SUBSCR_NOTIFY" TINYINT DEFAULT '1' NOT NULL,
- "OFF_TS" TIMESTAMP,
- "RECOMMENDATIONS" TINYINT DEFAULT '1' NOT NULL,
- "PRIVACY_VIEW" TINYINT DEFAULT '1' NOT NULL,
- "PRIVACY_REPLY" TINYINT DEFAULT '1' NOT NULL,
- "PRIVACY_PM" TINYINT DEFAULT '1' NOT NULL,
- "REPLIESVIEW" TINYINT DEFAULT '0' NOT NULL
-);
-ALTER TABLE "PUBLIC"."USEROPTIONS" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_C0" PRIMARY KEY("USER_ID");
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.USEROPTIONS;
-CREATE MEMORY TABLE "PUBLIC"."PM"(
- "USER_ID" INTEGER NOT NULL,
- "USER_ID_TO" INTEGER NOT NULL,
- "TS" TIMESTAMP(6) DEFAULT CURRENT_TIMESTAMP NOT NULL,
- "TXT" CHARACTER VARYING NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.PM;
-CREATE MEMORY TABLE "PUBLIC"."FOLLOWERS"(
- "USER_ID" INTEGER DEFAULT NULL,
- "TS" TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL,
- "ACCT" VARCHAR(64) NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.FOLLOWERS;
-CREATE MEMORY TABLE "PUBLIC"."SUBSCR_USERS"(
- "USER_ID" INTEGER NOT NULL,
- "SUSER_ID" INTEGER NOT NULL,
- "TS" TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.SUBSCR_USERS;
-CREATE MEMORY TABLE "PUBLIC"."MESSENGER"(
- "USER_ID" INTEGER DEFAULT NULL,
- "SENDER_ID" BIGINT NOT NULL,
- "DISPLAY_NAME" CHARACTER(64) NOT NULL,
- "TS" TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL,
- "LOGINHASH" CHARACTER(36) DEFAULT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.MESSENGER;
-CREATE MEMORY TABLE "PUBLIC"."PLACES"(
- "PLACE_ID" INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 1) DEFAULT ON NULL NOT NULL,
- "LAT" DECIMAL(10, 7) NOT NULL,
- "LON" DECIMAL(10, 7) NOT NULL,
- "NAME" CHARACTER(64) NOT NULL,
- "DESCR" CHARACTER(255) DEFAULT NULL,
- "URL" CHARACTER(128) DEFAULT NULL,
- "USER_ID" INTEGER NOT NULL,
- "TS" TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL
-);
-ALTER TABLE "PUBLIC"."PLACES" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_8C" PRIMARY KEY("PLACE_ID");
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.PLACES;
-CREATE MEMORY TABLE "PUBLIC"."PLACES_TAGS"(
- "PLACE_ID" INTEGER NOT NULL,
- "TAG_ID" INTEGER NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.PLACES_TAGS;
-CREATE MEMORY TABLE "PUBLIC"."REPLIES"(
- "MESSAGE_ID" INTEGER NOT NULL,
- "REPLY_ID" SMALLINT NOT NULL,
- "USER_ID" INTEGER NOT NULL,
- "REPLYTO" SMALLINT DEFAULT '0' NOT NULL,
- "TS" TIMESTAMP(6) DEFAULT CURRENT_TIMESTAMP NOT NULL,
- "ATTACH" CHARACTER(3),
- "TXT" CHARACTER VARYING NOT NULL,
- "UPDATED_AT" TIMESTAMP(6) DEFAULT CURRENT_TIMESTAMP NOT NULL,
- "USER_URI" VARCHAR(255) DEFAULT NULL,
- "REPLY_URI" VARCHAR(255) DEFAULT NULL,
- "HTML" TINYINT DEFAULT '0' NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.REPLIES;
-CREATE INDEX "PUBLIC"."REPLY_URI_INDEX" ON "PUBLIC"."REPLIES"("REPLY_URI" NULLS FIRST);
-CREATE MEMORY TABLE "PUBLIC"."MESSAGES_TXT"(
- "MESSAGE_ID" INTEGER NOT NULL,
- "REPLIESBY" CHARACTER VARYING(96) DEFAULT NULL,
- "TXT" CHARACTER VARYING NOT NULL,
- "UPDATED_AT" TIMESTAMP(6) DEFAULT CURRENT_TIMESTAMP NOT NULL
-);
-ALTER TABLE "PUBLIC"."MESSAGES_TXT" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_3E" PRIMARY KEY("MESSAGE_ID");
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.MESSAGES_TXT;
-CREATE MEMORY TABLE "PUBLIC"."MESSAGES"(
- "MESSAGE_ID" INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 1) DEFAULT ON NULL NOT NULL,
- "USER_ID" INTEGER NOT NULL,
- "LANG" ENUM('en', 'ru', 'fr', 'fa', '__') DEFAULT '__' NOT NULL,
- "TS" TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP NOT NULL,
- "REPLIES" SMALLINT DEFAULT '0' NOT NULL,
- "MAXREPLYID" SMALLINT DEFAULT '0' NOT NULL,
- "PRIVACY" TINYINT DEFAULT '1' NOT NULL,
- "READONLY" TINYINT DEFAULT '0' NOT NULL,
- "ATTACH" CHARACTER(3),
- "PLACE_ID" INTEGER DEFAULT NULL,
- "LAT" DECIMAL(10, 7) DEFAULT NULL,
- "LON" DECIMAL(10, 7) DEFAULT NULL,
- "POPULAR" TINYINT DEFAULT '0' NOT NULL,
- "HIDDEN" TINYINT DEFAULT '0' NOT NULL,
- "LIKES" SMALLINT DEFAULT '0' NOT NULL,
- "UPDATED" TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP NOT NULL
-);
-ALTER TABLE "PUBLIC"."MESSAGES" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_13" PRIMARY KEY("MESSAGE_ID");
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.MESSAGES;
-CREATE MEMORY TABLE "PUBLIC"."VK"(
- "USER_ID" INTEGER DEFAULT NULL,
- "VK_ID" BIGINT NOT NULL,
- "LOGINHASH" CHARACTER(36) DEFAULT NULL,
- "ACCESS_TOKEN" CHARACTER VARYING(64),
- "TS" TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL,
- "VK_NAME" CHARACTER(64) NOT NULL,
- "VK_LINK" CHARACTER(64) NOT NULL,
- "CROSSPOST" SMALLINT DEFAULT '1' NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.VK;
-CREATE MEMORY TABLE "PUBLIC"."SUBSCR_MESSAGES"(
- "MESSAGE_ID" INTEGER NOT NULL,
- "SUSER_ID" INTEGER NOT NULL,
- "LAST_READ_RID" SMALLINT DEFAULT '0' NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.SUBSCR_MESSAGES;
-CREATE MEMORY TABLE "PUBLIC"."SUBSCR_TAGS"(
- "TAG_ID" INTEGER NOT NULL,
- "SUSER_ID" INTEGER NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.SUBSCR_TAGS;
-CREATE MEMORY TABLE "PUBLIC"."USERS"(
- "ID" INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0 RESTART WITH 6 MINVALUE 0) DEFAULT ON NULL NOT NULL,
- "NICK" VARCHAR(64) NOT NULL,
- "PASSW" VARCHAR(32) NOT NULL,
- "LANG" ENUM('en', 'ru', 'fr', 'fa', '__') DEFAULT '__' NOT NULL,
- "BANNED" TINYINT DEFAULT '0' NOT NULL,
- "LASTMESSAGE" TIMESTAMP(6) NOT NULL,
- "LASTPM" INTEGER DEFAULT '0' NOT NULL,
- "LASTPHOTO" INTEGER DEFAULT '0' NOT NULL,
- "KARMA" SMALLINT DEFAULT '0' NOT NULL,
- "LAST_SEEN" TIMESTAMP(6)
-);
-ALTER TABLE "PUBLIC"."USERS" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_4" PRIMARY KEY("ID");
-CREATE MEMORY TABLE "PUBLIC"."TAGS"(
- "TAG_ID" INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 1 RESTART WITH 3) DEFAULT ON NULL NOT NULL,
- "SYNONYM_ID" INTEGER DEFAULT NULL,
- "NAME" VARCHAR_IGNORECASE(70) DEFAULT NULL,
- "TOP" BOOLEAN DEFAULT FALSE NOT NULL,
- "NOINDEX" BOOLEAN DEFAULT FALSE NOT NULL,
- "STAT_MESSAGES" INTEGER DEFAULT '0' NOT NULL,
- "STAT_USERS" SMALLINT DEFAULT '0' NOT NULL
-);
-ALTER TABLE "PUBLIC"."TAGS" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_27" PRIMARY KEY("TAG_ID");
-CREATE MEMORY TABLE "PUBLIC"."TAGS_IGNORE"(
- "TAG_ID" INTEGER NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.TAGS_IGNORE;
-CREATE MEMORY TABLE "PUBLIC"."TAGS_SYNONYMS"(
- "NAME" CHARACTER(64) NOT NULL,
- "CHANGETO" CHARACTER(64) NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.TAGS_SYNONYMS;
-CREATE MEMORY TABLE "PUBLIC"."TELEGRAM"(
- "USER_ID" INTEGER DEFAULT NULL,
- "TG_ID" BIGINT NOT NULL,
- "TG_NAME" CHARACTER(64) DEFAULT NULL,
- "TS" TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL,
- "LOGINHASH" CHARACTER(36) DEFAULT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.TELEGRAM;
-CREATE MEMORY TABLE "PUBLIC"."TOP_IGNORE_MESSAGES"(
- "MESSAGE_ID" INTEGER NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.TOP_IGNORE_MESSAGES;
-CREATE MEMORY TABLE "PUBLIC"."TOP_IGNORE_TAGS"(
- "TAG_ID" INTEGER NOT NULL
-);
-ALTER TABLE "PUBLIC"."TOP_IGNORE_TAGS" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_7" PRIMARY KEY("TAG_ID");
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.TOP_IGNORE_TAGS;
-CREATE MEMORY TABLE "PUBLIC"."TOP_IGNORE_USERS"(
- "USER_ID" INTEGER NOT NULL
-);
-ALTER TABLE "PUBLIC"."TOP_IGNORE_USERS" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_B2" PRIMARY KEY("USER_ID");
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.TOP_IGNORE_USERS;
-CREATE MEMORY TABLE "PUBLIC"."FACEBOOK"(
- "USER_ID" INTEGER DEFAULT NULL,
- "FB_ID" BIGINT,
- "LOGINHASH" CHARACTER(36) DEFAULT NULL,
- "ACCESS_TOKEN" CHARACTER VARYING(64),
- "TS" TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL,
- "FB_NAME" CHARACTER(64),
- "FB_LINK" CHARACTER(255),
- "CROSSPOST" TINYINT DEFAULT '1' NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.FACEBOOK;
-CREATE MEMORY TABLE "PUBLIC"."TWITTER"(
- "USER_ID" INTEGER NOT NULL,
- "ACCESS_TOKEN" CHARACTER VARYING(64),
- "ACCESS_TOKEN_SECRET" CHARACTER(64) NOT NULL,
- "UNAME" CHARACTER(64) NOT NULL,
- "TS" TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL,
- "CROSSPOST" TINYINT DEFAULT '1' NOT NULL
-);
-ALTER TABLE "PUBLIC"."TWITTER" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_F" PRIMARY KEY("USER_ID");
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.TWITTER;
-CREATE MEMORY TABLE "PUBLIC"."USERS_SUBSCR"(
- "USER_ID" INTEGER NOT NULL,
- "CNT" SMALLINT DEFAULT '0' NOT NULL
-);
-ALTER TABLE "PUBLIC"."USERS_SUBSCR" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_BB" PRIMARY KEY("USER_ID");
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.USERS_SUBSCR;
-CREATE MEMORY TABLE "PUBLIC"."USERSINFO"(
- "USER_ID" INTEGER NOT NULL,
- "JID" CHARACTER(32) DEFAULT NULL,
- "FULLNAME" VARCHAR(32) DEFAULT NULL,
- "COUNTRY" VARCHAR(32) DEFAULT NULL,
- "URL" CHARACTER(64) DEFAULT NULL,
- "GENDER" CHARACTER(32) DEFAULT NULL,
- "BDAY" CHARACTER(10) DEFAULT NULL,
- "DESCR" CHARACTER VARYING(255) DEFAULT NULL
-);
-ALTER TABLE "PUBLIC"."USERSINFO" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_BB6" PRIMARY KEY("USER_ID");
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.USERSINFO;
-CREATE MEMORY TABLE "PUBLIC"."EMAILS"(
- "USER_ID" INTEGER NOT NULL,
- "EMAIL" VARCHAR(64) NOT NULL,
- "SUBSCR_HOUR" TINYINT DEFAULT NULL
-);
-ALTER TABLE "PUBLIC"."EMAILS" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_7A" PRIMARY KEY("EMAIL");
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.EMAILS;
-CREATE MEMORY TABLE "PUBLIC"."IOS"(
- "USER_ID" INTEGER NOT NULL,
- "TOKEN" VARCHAR(64) NOT NULL,
- "TS" TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.IOS;
-CREATE MEMORY TABLE "PUBLIC"."JIDS"(
- "USER_ID" INTEGER DEFAULT NULL,
- "JID" CHARACTER(64) NOT NULL,
- "ACTIVE" TINYINT DEFAULT '1' NOT NULL,
- "LOGINHASH" CHARACTER(36) DEFAULT NULL,
- "TS" TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.JIDS;
-CREATE MEMORY TABLE "PUBLIC"."LOGINS"(
- "USER_ID" INTEGER NOT NULL,
- "HASH" CHARACTER(16) NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.LOGINS;
-CREATE MEMORY TABLE "PUBLIC"."PM_INROSTER"(
- "USER_ID" INTEGER NOT NULL,
- "JID" CHARACTER(64) NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.PM_INROSTER;
-CREATE MEMORY TABLE "PUBLIC"."VERSION"(
- "VERSION" BIGINT NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.VERSION;
-CREATE MEMORY TABLE "PUBLIC"."WINPHONE"(
- "USER_ID" INTEGER NOT NULL,
- "URL" CHARACTER(255) NOT NULL,
- "TS" TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL
-);
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.WINPHONE;
-CREATE MEMORY TABLE "PUBLIC"."WL_USERS"(
- "USER_ID" INTEGER NOT NULL,
- "WL_USER_ID" INTEGER NOT NULL
-);
-ALTER TABLE "PUBLIC"."WL_USERS" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_A8" PRIMARY KEY("USER_ID", "WL_USER_ID");
--- 0 +/- SELECT COUNT(*) FROM PUBLIC.WL_USERS;
-ALTER TABLE "PUBLIC"."MESSAGES" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_131" CHECK("ATTACH" IN('jpg', 'mp4', 'png')) NOCHECK;
-ALTER TABLE "PUBLIC"."REPLIES" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_6C" CHECK("ATTACH" IN('jpg', 'mp4', 'png')) NOCHECK;
-ALTER TABLE "PUBLIC"."LOGINS" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_86" UNIQUE("USER_ID");
-ALTER TABLE "PUBLIC"."PM_INROSTER" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_5" UNIQUE("USER_ID", "JID");
-ALTER TABLE "PUBLIC"."REACTIONS" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_6" UNIQUE("LIKE_ID");
-ALTER TABLE "PUBLIC"."IOS" ADD CONSTRAINT "PUBLIC"."TOKEN" UNIQUE("TOKEN");
-ALTER TABLE "PUBLIC"."SUBSCR_TAGS" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_B" UNIQUE("TAG_ID", "SUSER_ID");
-ALTER TABLE "PUBLIC"."SUBSCR_USERS" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_C" UNIQUE("USER_ID", "SUSER_ID");
-ALTER TABLE "PUBLIC"."MESSAGES_PROPERTIES" ADD CONSTRAINT "PUBLIC"."MESSAGE_KEY" UNIQUE("MESSAGE_ID", "REPLY_ID", "PROPERTY_KEY");
-ALTER TABLE "PUBLIC"."USERS" ADD CONSTRAINT "PUBLIC"."NICK" UNIQUE("NICK");
-ALTER TABLE "PUBLIC"."MESSAGES_TAGS" ADD CONSTRAINT "PUBLIC"."MESSAGE_ID_2" UNIQUE("MESSAGE_ID", "TAG_ID");
-ALTER TABLE "PUBLIC"."SUBSCR_MESSAGES" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_6D" UNIQUE("MESSAGE_ID", "SUSER_ID");
-ALTER TABLE "PUBLIC"."JIDS" ADD CONSTRAINT "PUBLIC"."JID" UNIQUE("JID");
-ALTER TABLE "PUBLIC"."WINPHONE" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_EC" UNIQUE("URL");
-ALTER TABLE "PUBLIC"."VK" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_A" FOREIGN KEY("USER_ID") REFERENCES "PUBLIC"."USERS"("ID") NOCHECK;
-ALTER TABLE "PUBLIC"."FAVORITES" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_3" FOREIGN KEY("LIKE_ID") REFERENCES "PUBLIC"."REACTIONS"("LIKE_ID") NOCHECK;
-ALTER TABLE "PUBLIC"."IOS" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_1" FOREIGN KEY("USER_ID") REFERENCES "PUBLIC"."USERS"("ID") NOCHECK;
-ALTER TABLE "PUBLIC"."MESSAGES" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_131A" FOREIGN KEY("USER_ID") REFERENCES "PUBLIC"."USERS"("ID") NOCHECK;
-ALTER TABLE "PUBLIC"."FOLLOWERS" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_D" FOREIGN KEY("USER_ID") REFERENCES "PUBLIC"."USERS"("ID") NOCHECK;
-ALTER TABLE "PUBLIC"."JIDS" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_22" FOREIGN KEY("USER_ID") REFERENCES "PUBLIC"."USERS"("ID") NOCHECK;
-ALTER TABLE "PUBLIC"."EMAILS" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_7A1" FOREIGN KEY("USER_ID") REFERENCES "PUBLIC"."USERS"("ID") NOCHECK;
-ALTER TABLE "PUBLIC"."PM_INROSTER" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_54" FOREIGN KEY("USER_ID") REFERENCES "PUBLIC"."USERS"("ID") NOCHECK;
-ALTER TABLE "PUBLIC"."WINPHONE" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_ECD" FOREIGN KEY("USER_ID") REFERENCES "PUBLIC"."USERS"("ID") NOCHECK;
diff --git a/src/main/resources/db/specific/h2/V1.24__fix_lastmessage.sql b/src/main/resources/db/specific/h2/V1.24__fix_lastmessage.sql
deleted file mode 100644
index bcca2b50..00000000
--- a/src/main/resources/db/specific/h2/V1.24__fix_lastmessage.sql
+++ /dev/null
@@ -1,2 +0,0 @@
-ALTER TABLE users ALTER COLUMN lastmessage SET NULL
-
diff --git a/src/main/resources/db/specific/h2/V1.26__case_insensitive_nick.sql b/src/main/resources/db/specific/h2/V1.26__case_insensitive_nick.sql
deleted file mode 100644
index 3b17aa00..00000000
--- a/src/main/resources/db/specific/h2/V1.26__case_insensitive_nick.sql
+++ /dev/null
@@ -1 +0,0 @@
-ALTER TABLE users ALTER COLUMN nick SET DATA TYPE VARCHAR_IGNORECASE(64)
diff --git a/src/main/resources/db/specific/h2/V1.27__followers_unique.sql b/src/main/resources/db/specific/h2/V1.27__followers_unique.sql
deleted file mode 100644
index e103d1a0..00000000
--- a/src/main/resources/db/specific/h2/V1.27__followers_unique.sql
+++ /dev/null
@@ -1 +0,0 @@
-ALTER TABLE followers ADD UNIQUE (user_id, acct) \ No newline at end of file
diff --git a/src/main/resources/db/specific/h2/V1.35__case_insensitive_email_jid.sql b/src/main/resources/db/specific/h2/V1.35__case_insensitive_email_jid.sql
deleted file mode 100644
index a20debf6..00000000
--- a/src/main/resources/db/specific/h2/V1.35__case_insensitive_email_jid.sql
+++ /dev/null
@@ -1,2 +0,0 @@
-ALTER TABLE jids ALTER COLUMN jid SET DATA TYPE VARCHAR_IGNORECASE(255);
-ALTER TABLE emails ALTER COLUMN email SET DATA TYPE VARCHAR_IGNORECASE(255)
diff --git a/src/main/resources/db/specific/mariadb/V1.24__fix_lastmessage.sql b/src/main/resources/db/specific/mariadb/V1.24__fix_lastmessage.sql
deleted file mode 100644
index 399abf01..00000000
--- a/src/main/resources/db/specific/mariadb/V1.24__fix_lastmessage.sql
+++ /dev/null
@@ -1 +0,0 @@
-ALTER TABLE users MODIFY COLUMN lastmessage TIMESTAMP(6) NULL \ No newline at end of file
diff --git a/src/main/resources/db/specific/mariadb/V1.25__update_tokens_size.sql b/src/main/resources/db/specific/mariadb/V1.25__update_tokens_size.sql
deleted file mode 100644
index 05eefe24..00000000
--- a/src/main/resources/db/specific/mariadb/V1.25__update_tokens_size.sql
+++ /dev/null
@@ -1,3 +0,0 @@
-ALTER TABLE vk MODIFY COLUMN access_token VARCHAR(255);
-ALTER TABLE twitter MODIFY COLUMN access_token VARCHAR(255);
-ALTER TABLE facebook MODIFY COLUMN access_token VARCHAR(255); \ No newline at end of file
diff --git a/src/main/resources/db/specific/mariadb/V1.27__followers_unique.sql b/src/main/resources/db/specific/mariadb/V1.27__followers_unique.sql
deleted file mode 100644
index e103d1a0..00000000
--- a/src/main/resources/db/specific/mariadb/V1.27__followers_unique.sql
+++ /dev/null
@@ -1 +0,0 @@
-ALTER TABLE followers ADD UNIQUE (user_id, acct) \ No newline at end of file
diff --git a/src/main/resources/db/specific/postgresql/V1.25__update_tokens_size.sql b/src/main/resources/db/specific/postgresql/V1.25__update_tokens_size.sql
deleted file mode 100644
index a1c7bbac..00000000
--- a/src/main/resources/db/specific/postgresql/V1.25__update_tokens_size.sql
+++ /dev/null
@@ -1,3 +0,0 @@
-ALTER TABLE vk ALTER COLUMN access_token TYPE character varying(255);
-ALTER TABLE twitter ALTER COLUMN access_token TYPE character varying(255);
-ALTER TABLE facebook ALTER COLUMN access_token TYPE character varying(255); \ No newline at end of file
diff --git a/src/main/resources/db/specific/sqlite/V1.22__schema.sql b/src/main/resources/db/specific/sqlite/V1.22__schema.sql
deleted file mode 100644
index 072b2a1a..00000000
--- a/src/main/resources/db/specific/sqlite/V1.22__schema.sql
+++ /dev/null
@@ -1,377 +0,0 @@
-CREATE TABLE android (
- user_id INTEGER NOT NULL,
- regid character varying(1024) NOT NULL,
- ts timestamp with time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
- FOREIGN KEY (user_id) REFERENCES users(id),
- UNIQUE (regid)
-);
-
-CREATE TABLE auth (
- user_id INTEGER,
- protocol TEXT CHECK (protocol IN ('xmpp', 'email', 'sms')) NOT NULL,
- account character varying(128) NOT NULL,
- authcode character varying(8) NOT NULL,
- ts timestamp with time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
- FOREIGN KEY (user_id) REFERENCES users(id)
-);
-
-CREATE TABLE bl_tags (
- user_id bigint NOT NULL,
- tag_id bigint NOT NULL,
- FOREIGN KEY (user_id) REFERENCES users(id),
- FOREIGN KEY (tag_id) REFERENCES tags(tag_id)
-);
-
-CREATE TABLE bl_users (
- user_id bigint NOT NULL,
- bl_user_id bigint NOT NULL,
- ts timestamp with time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
- PRIMARY KEY (user_id, bl_user_id),
- FOREIGN KEY (user_id) REFERENCES users(id),
- FOREIGN KEY (bl_user_id) REFERENCES users(id)
-);
-
-CREATE TABLE emails (
- user_id bigint NOT NULL,
- email character varying(128) NOT NULL,
- subscr_hour smallint,
- FOREIGN KEY (user_id) REFERENCES users(id)
-);
-
-CREATE TABLE facebook (
- user_id bigint,
- fb_id numeric,
- loginhash character varying(36),
- access_token character varying(255),
- ts timestamp with time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
- fb_name character varying(64),
- fb_link character varying(255) NOT NULL,
- crosspost boolean DEFAULT true NOT NULL,
- FOREIGN KEY (user_id) REFERENCES users(id)
-);
-
-CREATE TABLE favorites (
- user_id bigint NOT NULL,
- message_id bigint NOT NULL,
- ts timestamp with time zone,
- like_id smallint DEFAULT 1 NOT NULL,
- user_uri character varying(255) NOT NULL DEFAULT '',
- FOREIGN KEY (like_id) REFERENCES reactions(like_id)
-);
-
-CREATE TABLE followers (
- user_id bigint,
- ts timestamp with time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
- acct character varying(64) NOT NULL,
- PRIMARY KEY (user_id)
- FOREIGN KEY (user_id) REFERENCES users(id)
-);
-
-CREATE TABLE images (
- mid bigint NOT NULL,
- rid bigint NOT NULL,
- thumb bigint NOT NULL,
- small bigint NOT NULL,
- medium bigint NOT NULL,
- height bigint NOT NULL,
- width bigint NOT NULL,
- PRIMARY KEY (mid, rid)
-);
-
-CREATE TABLE ios (
- user_id bigint NOT NULL,
- token character varying(64) NOT NULL,
- ts timestamp with time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
- FOREIGN KEY (user_id) REFERENCES users(id),
- UNIQUE (token)
-);
-
-CREATE TABLE jids (
- user_id bigint,
- jid character varying(64) NOT NULL,
- active smallint DEFAULT 0 NOT NULL,
- loginhash character varying(36),
- ts timestamp with time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
- FOREIGN KEY (user_id) REFERENCES users(id)
-);
-
-CREATE TABLE logins (
- user_id bigint NOT NULL,
- hash character varying(16) NOT NULL,
- FOREIGN KEY (user_id) REFERENCES users(id)
-);
-
-CREATE TABLE mail (
- user_id INTEGER NOT NULL,
- hash character varying(16) NOT NULL,
- ts timestamp with time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
- FOREIGN KEY (user_id) REFERENCES users(id)
-);
-
-CREATE TABLE meon (
- id INTEGER NOT NULL,
- user_id bigint NOT NULL,
- link character varying(255) NOT NULL,
- name character varying(32) NOT NULL,
- ico smallint,
- FOREIGN KEY (user_id) REFERENCES users(id)
-);
-
-CREATE TABLE messages (
- message_id INTEGER PRIMARY KEY NOT NULL,
- user_id bigint NOT NULL,
- lang TEXT DEFAULT '__' NOT NULL,
- ts timestamp with time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
- replies smallint DEFAULT (0) NOT NULL,
- maxreplyid smallint DEFAULT (0) NOT NULL,
- privacy smallint DEFAULT (1) NOT NULL,
- readonly boolean DEFAULT false NOT NULL,
- attach TEXT CHECK (attach IN ('jpg', 'mp4', 'png')),
- place_id bigint,
- lat numeric(10,7),
- lon numeric(10,7),
- popular smallint DEFAULT (0) NOT NULL,
- hidden smallint DEFAULT (0) NOT NULL,
- likes smallint DEFAULT (0) NOT NULL,
- updated timestamp with time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
- FOREIGN KEY (user_id) REFERENCES users(id)
-);
-
-CREATE TABLE messages_access (
- message_id INTEGER NOT NULL,
- user_id bigint NOT NULL,
- FOREIGN KEY (user_id) REFERENCES users(id),
- FOREIGN KEY (message_id) REFERENCES messages(message_id)
-);
-
-CREATE TABLE messages_properties (
- message_id INTEGER PRIMARY KEY NOT NULL,
- reply_id smallint NOT NULL,
- property_key character varying(255) NOT NULL,
- property_value text NOT NULL,
- UNIQUE (message_id, reply_id, property_key),
- FOREIGN KEY (message_id) REFERENCES messages(message_id)
-);
-
-CREATE TABLE messages_tags (
- message_id INTEGER NOT NULL,
- tag_id bigint NOT NULL,
- FOREIGN KEY (message_id) REFERENCES messages(message_id)
-);
-
-CREATE TABLE messages_txt (
- message_id INTEGER NOT NULL,
- repliesby text,
- txt text NOT NULL,
- updated_at timestamp with time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
- FOREIGN KEY (message_id) REFERENCES messages(message_id)
-);
-
-CREATE TABLE places (
- place_id INTEGER PRIMARY KEY NOT NULL,
- lat numeric(10,7) NOT NULL,
- lon numeric(10,7) NOT NULL,
- name character varying(64) NOT NULL,
- descr character varying(255),
- url character varying(128),
- user_id bigint NOT NULL,
- ts timestamp with time zone DEFAULT CURRENT_TIMESTAMP NOT NULL
-);
-
-CREATE TABLE places_tags (
- place_id INTEGER NOT NULL,
- tag_id bigint NOT NULL,
- FOREIGN KEY (place_id) REFERENCES places(place_id)
-);
-
-CREATE TABLE pm (
- user_id bigint NOT NULL,
- user_id_to bigint NOT NULL,
- ts timestamp with time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
- txt text NOT NULL,
- FOREIGN KEY (user_id) REFERENCES users(id),
- FOREIGN KEY (user_id_to) REFERENCES users(id)
-);
-
-CREATE TABLE pm_inroster (
- user_id bigint NOT NULL,
- jid character varying(64) NOT NULL,
- FOREIGN KEY (user_id) REFERENCES users(id)
-);
-
-CREATE TABLE reactions (
- like_id INTEGER PRIMARY KEY NOT NULL,
- description character varying(100) NOT NULL
-);
-
-CREATE TABLE replies (
- message_id bigint NOT NULL,
- reply_id smallint NOT NULL,
- user_id bigint NOT NULL,
- replyto smallint DEFAULT (0) NOT NULL,
- ts timestamp with time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
- attach TEXT CHECK (attach IN ('jpg', 'mp4', 'png')),
- txt text NOT NULL,
- updated_at timestamp with time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
- user_uri character varying(255) DEFAULT NULL,
- reply_uri character varying(255) DEFAULT NULL,
- html smallint DEFAULT '0' NOT NULL,
- FOREIGN KEY (message_id) REFERENCES messages(message_id),
- FOREIGN KEY (user_id) REFERENCES users(id)
-);
-
-CREATE TABLE subscr_messages (
- message_id bigint NOT NULL,
- suser_id bigint NOT NULL,
- last_read_rid smallint DEFAULT 0 NOT NULL,
- FOREIGN KEY (message_id) REFERENCES messages(message_id),
- FOREIGN KEY (suser_id) REFERENCES users(id)
-);
-
-CREATE TABLE subscr_tags (
- tag_id bigint NOT NULL,
- suser_id bigint NOT NULL,
- FOREIGN KEY (tag_id) REFERENCES tags(tag_id),
- FOREIGN KEY (suser_id) REFERENCES users(id)
-);
-
-CREATE TABLE subscr_users (
- user_id bigint NOT NULL,
- suser_id bigint NOT NULL,
- ts timestamp with time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
- FOREIGN KEY (user_id) REFERENCES users(id),
- FOREIGN KEY (suser_id) REFERENCES users(id)
-);
-
-CREATE TABLE tags (
- tag_id INTEGER PRIMARY KEY NOT NULL,
- synonym_id bigint,
- name character varying(70) COLLATE NOCASE,
- top boolean DEFAULT false NOT NULL,
- noindex boolean DEFAULT false NOT NULL,
- stat_messages bigint DEFAULT (0) NOT NULL,
- stat_users smallint DEFAULT (0) NOT NULL,
- FOREIGN KEY (synonym_id) REFERENCES tags(tag_id)
-);
-
-CREATE TABLE tags_ignore (
- tag_id bigint NOT NULL,
- FOREIGN KEY (tag_id) REFERENCES tags(tag_id)
-);
-
-CREATE TABLE tags_synonyms (
- name character varying(64) NOT NULL,
- changeto character varying(64) NOT NULL
-);
-
-CREATE TABLE telegram (
- user_id bigint,
- tg_id numeric NOT NULL,
- tg_name character varying(64) NOT NULL,
- ts timestamp with time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
- loginhash character varying(36),
- FOREIGN KEY (user_id) REFERENCES users(id)
-);
-
-CREATE TABLE top_ignore_messages (
- message_id bigint NOT NULL,
- FOREIGN KEY (message_id) REFERENCES messages(message_id)
-);
-
-CREATE TABLE top_ignore_tags (
- tag_id NOT NULL,
- FOREIGN KEY (tag_id) REFERENCES tag(tag_id)
-);
-
-CREATE TABLE top_ignore_users (
- user_id bigint NOT NULL,
- FOREIGN KEY (user_id) REFERENCES users(id)
-);
-
-CREATE TABLE twitter (
- user_id INTEGER NOT NULL,
- access_token character varying(64) NOT NULL,
- access_token_secret character varying(64) NOT NULL,
- uname character varying(64) NOT NULL,
- ts timestamp with time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
- crosspost boolean DEFAULT true NOT NULL,
- FOREIGN KEY (user_id) REFERENCES users(id)
-);
-
-CREATE TABLE useroptions (
- user_id INTEGER NOT NULL,
- jnotify smallint DEFAULT 1 NOT NULL,
- subscr_active smallint DEFAULT 1 NOT NULL,
- off_ts timestamp with time zone,
- xmppxhtml smallint DEFAULT 0 NOT NULL,
- subscr_notify smallint DEFAULT 1 NOT NULL,
- recommendations smallint DEFAULT 1 NOT NULL,
- privacy_view smallint DEFAULT 1 NOT NULL,
- privacy_reply smallint DEFAULT 1 NOT NULL,
- privacy_pm smallint DEFAULT 1 NOT NULL,
- repliesview smallint DEFAULT 0 NOT NULL,
- FOREIGN KEY (user_id) REFERENCES users(id)
-);
-
-CREATE TABLE users (
- id bigint NOT NULL,
- nick character varying(64) NOT NULL COLLATE NOCASE,
- passw character varying(32) NOT NULL,
- lang users_lang DEFAULT '__' NOT NULL,
- banned smallint DEFAULT (0) NOT NULL,
- lastmessage timestamp with time zone,
- lastpm bigint DEFAULT (0) NOT NULL,
- lastphoto bigint DEFAULT (0) NOT NULL,
- karma smallint DEFAULT (0) NOT NULL,
- last_seen timestamp with time zone,
- PRIMARY KEY (id)
-);
-
-CREATE TABLE users_subscr (
- user_id bigint NOT NULL,
- cnt smallint DEFAULT (0) NOT NULL,
- FOREIGN KEY (user_id) REFERENCES users(id)
-);
-
-CREATE TABLE usersinfo (
- user_id bigint NOT NULL,
- jid character varying(64),
- fullname character varying(64),
- country character varying(32),
- url character varying(128),
- gender character varying(32),
- bday character varying(32),
- descr text,
- FOREIGN KEY (user_id) REFERENCES users(id)
-);
-
-CREATE TABLE version (
- version numeric NOT NULL
-);
-
-CREATE TABLE vk (
- user_id bigint,
- vk_id numeric NULL,
- loginhash character varying(36),
- access_token character varying(128) NOT NULL,
- ts timestamp with time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
- vk_name character varying(64) NOT NULL,
- vk_link character varying(64) NOT NULL,
- crosspost smallint DEFAULT (1) NOT NULL,
- FOREIGN KEY (user_id) REFERENCES users(id)
-);
-
-CREATE TABLE winphone (
- user_id bigint NOT NULL,
- url character varying(255) NOT NULL,
- ts timestamp with time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
- FOREIGN KEY (user_id) REFERENCES users(id)
-);
-
-CREATE TABLE wl_users (
- user_id bigint NOT NULL,
- wl_user_id bigint NOT NULL,
- PRIMARY KEY (user_id, wl_user_id),
- FOREIGN KEY (user_id) REFERENCES users(id),
- FOREIGN KEY (wl_user_id) REFERENCES users(id)
-);