Last active
December 24, 2019 12:58
-
-
Save snoopsD/cd24610940ff91d5cfd54ef432bad9e8 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| diff --git a/db/structure.sql b/db/structure.sql | |
| index adeb38781..38365d642 100644 | |
| --- a/db/structure.sql | |
| +++ b/db/structure.sql | |
| @@ -2,8 +2,8 @@ | |
| -- PostgreSQL database dump | |
| -- | |
| --- Dumped from database version 10.6 | |
| --- Dumped by pg_dump version 10.6 | |
| +-- Dumped from database version 10.11 (Debian 10.11-1.pgdg100+1) | |
| +-- Dumped by pg_dump version 11.6 (Debian 11.6-1.pgdg100+1) | |
| SET statement_timeout = 0; | |
| SET lock_timeout = 0; | |
| @@ -12,6 +12,7 @@ SET client_encoding = 'UTF8'; | |
| SET standard_conforming_strings = on; | |
| SELECT pg_catalog.set_config('search_path', '', false); | |
| SET check_function_bodies = false; | |
| +SET xmloption = content; | |
| SET client_min_messages = warning; | |
| SET row_security = off; | |
| @@ -22,6 +23,20 @@ SET row_security = off; | |
| CREATE SCHEMA extensions; | |
| +-- | |
| +-- Name: public; Type: SCHEMA; Schema: -; Owner: - | |
| +-- | |
| + | |
| +CREATE SCHEMA public; | |
| + | |
| + | |
| +-- | |
| +-- Name: SCHEMA public; Type: COMMENT; Schema: -; Owner: - | |
| +-- | |
| + | |
| +COMMENT ON SCHEMA public IS 'standard public schema'; | |
| + | |
| + | |
| -- | |
| -- Name: gender; Type: TYPE; Schema: public; Owner: - | |
| -- | |
| @@ -72,14 +87,7 @@ CREATE TYPE public.user_activation_type AS ENUM ( | |
| CREATE FUNCTION public.json_object_delete_keys(json json, VARIADIC keys_to_delete text[]) RETURNS json | |
| LANGUAGE sql IMMUTABLE STRICT | |
| - AS $$ | |
| -SELECT COALESCE( | |
| - (SELECT ('{' || string_agg(to_json("key") || ':' || "value", ',') || '}') | |
| - FROM json_each("json") | |
| - WHERE "key" <> ALL ("keys_to_delete")), | |
| - '{}' | |
| -)::json | |
| -$$; | |
| + AS $$ SELECT COALESCE( (SELECT ('{' || string_agg(to_json("key") || ':' || "value", ',') || '}') FROM json_each("json") WHERE "key" <> ALL ("keys_to_delete")), '{}' )::json $$; | |
| -- | |
| @@ -88,14 +96,7 @@ $$; | |
| CREATE FUNCTION public.json_object_set_key(json json, key_to_set text, value_to_set anyelement) RETURNS json | |
| LANGUAGE sql IMMUTABLE STRICT | |
| - AS $$ | |
| -SELECT concat('{', string_agg(to_json("key") || ':' || "value", ','), '}')::json | |
| - FROM (SELECT * | |
| - FROM json_each("json") | |
| - WHERE "key" <> "key_to_set" | |
| - UNION ALL | |
| - SELECT "key_to_set", (to_json("value_to_set"))::json) AS "fields" | |
| -$$; | |
| + AS $$ SELECT concat('{', string_agg(to_json("key") || ':' || "value", ','), '}')::json FROM (SELECT * FROM json_each("json") WHERE "key" <> "key_to_set" UNION ALL SELECT "key_to_set", (to_json("value_to_set"))::json) AS "fields" $$; | |
| -- | |
| @@ -104,23 +105,7 @@ $$; | |
| CREATE FUNCTION public.json_object_set_path(json json, key_path text[], value_to_set anyelement) RETURNS json | |
| LANGUAGE sql IMMUTABLE STRICT | |
| - AS $$ | |
| -SELECT CASE COALESCE(array_length("key_path", 1), 0) | |
| - WHEN 0 THEN (to_json("value_to_set"))::json | |
| - WHEN 1 THEN "json_object_set_key"("json", "key_path"[l], "value_to_set") | |
| - ELSE "json_object_set_key"( | |
| - "json", | |
| - "key_path"[l], | |
| - "json_object_set_path"( | |
| - COALESCE(NULLIF(("json" -> "key_path"[l])::text, 'null'), '{}')::json, | |
| - "key_path"[l+1:u], | |
| - "value_to_set" | |
| - ) | |
| - ) | |
| - END | |
| - FROM array_lower("key_path", 1) l, | |
| - array_upper("key_path", 1) u | |
| -$$; | |
| + AS $$ SELECT CASE COALESCE(array_length("key_path", 1), 0) WHEN 0 THEN (to_json("value_to_set"))::json WHEN 1 THEN "json_object_set_key"("json", "key_path"[l], "value_to_set") ELSE "json_object_set_key"( "json", "key_path"[l], "json_object_set_path"( COALESCE(NULLIF(("json" -> "key_path"[l])::text, 'null'), '{}')::json, "key_path"[l+1:u], "value_to_set" ) ) END FROM array_lower("key_path", 1) l, array_upper("key_path", 1) u $$; | |
| -- | |
| @@ -129,14 +114,7 @@ $$; | |
| CREATE FUNCTION public.jsonb_object_delete_keys(jsonb jsonb, VARIADIC keys_to_delete text[]) RETURNS jsonb | |
| LANGUAGE sql IMMUTABLE STRICT | |
| - AS $$ | |
| -SELECT COALESCE( | |
| - (SELECT ('{' || string_agg(to_json("key") || ':' || "value", ',') || '}') | |
| - FROM jsonb_each("jsonb") | |
| - WHERE "key" <> ALL ("keys_to_delete")), | |
| - '{}' | |
| -)::jsonb | |
| -$$; | |
| + AS $$ SELECT COALESCE( (SELECT ('{' || string_agg(to_json("key") || ':' || "value", ',') || '}') FROM jsonb_each("jsonb") WHERE "key" <> ALL ("keys_to_delete")), '{}' )::jsonb $$; | |
| -- | |
| @@ -145,14 +123,7 @@ $$; | |
| CREATE FUNCTION public.jsonb_object_set_key(jsonb jsonb, key_to_set text, value_to_set anyelement) RETURNS jsonb | |
| LANGUAGE sql IMMUTABLE STRICT | |
| - AS $$ | |
| -SELECT concat('{', string_agg(to_json("key") || ':' || "value", ','), '}')::jsonb | |
| - FROM (SELECT * | |
| - FROM jsonb_each("jsonb") | |
| - WHERE "key" <> "key_to_set" | |
| - UNION ALL | |
| - SELECT "key_to_set", (to_json("value_to_set"))::jsonb) AS "fields" | |
| -$$; | |
| + AS $$ SELECT concat('{', string_agg(to_json("key") || ':' || "value", ','), '}')::jsonb FROM (SELECT * FROM jsonb_each("jsonb") WHERE "key" <> "key_to_set" UNION ALL SELECT "key_to_set", (to_json("value_to_set"))::jsonb) AS "fields" $$; | |
| -- | |
| @@ -161,23 +132,7 @@ $$; | |
| CREATE FUNCTION public.jsonb_object_set_path(jsonb jsonb, key_path text[], value_to_set anyelement) RETURNS jsonb | |
| LANGUAGE sql IMMUTABLE STRICT | |
| - AS $$ | |
| -SELECT CASE COALESCE(array_length("key_path", 1), 0) | |
| - WHEN 0 THEN (to_json("value_to_set"))::jsonb | |
| - WHEN 1 THEN "jsonb_object_set_key"("jsonb", "key_path"[l], "value_to_set") | |
| - ELSE "jsonb_object_set_key"( | |
| - "jsonb", | |
| - "key_path"[l], | |
| - "jsonb_object_set_path"( | |
| - COALESCE(NULLIF(("jsonb" -> "key_path"[l])::text, 'null'), '{}')::jsonb, | |
| - "key_path"[l+1:u], | |
| - "value_to_set" | |
| - ) | |
| - ) | |
| - END | |
| - FROM array_lower("key_path", 1) l, | |
| - array_upper("key_path", 1) u | |
| -$$; | |
| + AS $$ SELECT CASE COALESCE(array_length("key_path", 1), 0) WHEN 0 THEN (to_json("value_to_set"))::jsonb WHEN 1 THEN "jsonb_object_set_key"("jsonb", "key_path"[l], "value_to_set") ELSE "jsonb_object_set_key"( "jsonb", "key_path"[l], "jsonb_object_set_path"( COALESCE(NULLIF(("jsonb" -> "key_path"[l])::text, 'null'), '{}')::jsonb, "key_path"[l+1:u], "value_to_set" ) ) END FROM array_lower("key_path", 1) l, array_upper("key_path", 1) u $$; | |
| -- | |
| @@ -186,12 +141,7 @@ $$; | |
| CREATE FUNCTION public.opinions_tsv_trigger() RETURNS trigger | |
| LANGUAGE plpgsql | |
| - AS $$ | |
| -BEGIN | |
| - new.comment_tsv := to_tsvector('ru', coalesce(new.comment :: TEXT, '')); | |
| - return new; | |
| -END | |
| -$$; | |
| + AS $$ BEGIN new.comment_tsv := to_tsvector('ru', coalesce(new.comment :: TEXT, '')); return new; END $$; | |
| -- | |
| @@ -209,15 +159,7 @@ CREATE FUNCTION public.pages_tsv_trigger() RETURNS trigger | |
| CREATE FUNCTION public.users_tsv_trigger() RETURNS trigger | |
| LANGUAGE plpgsql | |
| - AS $$ | |
| -BEGIN | |
| - new.appeal_full_name_tsv := to_tsvector('ru', | |
| - concat(coalesce(new.first_name, ''), ' ', | |
| - coalesce(new.middle_names, ''), ' ', | |
| - coalesce(new.last_name, ''))); | |
| - return new; | |
| -END | |
| -$$; | |
| + AS $$ BEGIN new.appeal_full_name_tsv := to_tsvector('ru', concat(coalesce(new.first_name, ''), ' ', coalesce(new.middle_names, ''), ' ', coalesce(new.last_name, ''))); return new; END $$; | |
| -- | |
| @@ -1079,7 +1021,7 @@ CREATE TABLE public.opinions ( | |
| user_id integer, | |
| page_id integer, | |
| type character varying, | |
| - hstore_fields extensions.hstore, | |
| + hstore_fields public.hstore, | |
| created_at timestamp without time zone, | |
| updated_at timestamp without time zone, | |
| parent_id integer, | |
| @@ -1159,7 +1101,7 @@ CREATE TABLE public.pages ( | |
| path character varying, | |
| state character varying, | |
| "position" integer, | |
| - hstore_fields extensions.hstore, | |
| + hstore_fields public.hstore, | |
| json_data json, | |
| parent_id integer, | |
| created_at timestamp without time zone, | |
| @@ -1211,7 +1153,7 @@ CREATE TABLE public.participation_events ( | |
| created_at timestamp without time zone, | |
| updated_at timestamp without time zone, | |
| point_receiver_participation_id integer, | |
| - data extensions.hstore, | |
| + data public.hstore, | |
| type character varying, | |
| user_id integer | |
| ); | |
| @@ -1995,7 +1937,7 @@ ALTER SEQUENCE public.user_badges_id_seq OWNED BY public.user_badges.id; | |
| CREATE TABLE public.user_fields ( | |
| id integer NOT NULL, | |
| - data extensions.hstore, | |
| + data public.hstore, | |
| user_id integer, | |
| created_at timestamp without time zone, | |
| updated_at timestamp without time zone | |
| @@ -2154,7 +2096,7 @@ CREATE TABLE public.users ( | |
| first_name character varying, | |
| last_name character varying, | |
| middle_names character varying, | |
| - data extensions.hstore, | |
| + data public.hstore, | |
| superadmin boolean DEFAULT false, | |
| email_notifications boolean DEFAULT true, | |
| allow_mass_mailings boolean DEFAULT true, | |
| @@ -4308,17 +4250,17 @@ CREATE UNIQUE INDEX watches_wide_idx ON public.watches USING btree (participatio | |
| -- | |
| --- Name: pages tsvectorupdate; Type: TRIGGER; Schema: public; Owner: - | |
| +-- Name: opinions tsvectorupdate; Type: TRIGGER; Schema: public; Owner: - | |
| -- | |
| -CREATE TRIGGER tsvectorupdate BEFORE INSERT OR UPDATE OF content, title ON public.pages FOR EACH ROW EXECUTE PROCEDURE public.pages_tsv_trigger(); | |
| +CREATE TRIGGER tsvectorupdate BEFORE INSERT OR UPDATE OF comment ON public.opinions FOR EACH ROW EXECUTE PROCEDURE public.opinions_tsv_trigger(); | |
| -- | |
| --- Name: opinions tsvectorupdate; Type: TRIGGER; Schema: public; Owner: - | |
| +-- Name: pages tsvectorupdate; Type: TRIGGER; Schema: public; Owner: - | |
| -- | |
| -CREATE TRIGGER tsvectorupdate BEFORE INSERT OR UPDATE OF comment ON public.opinions FOR EACH ROW EXECUTE PROCEDURE public.opinions_tsv_trigger(); | |
| +CREATE TRIGGER tsvectorupdate BEFORE INSERT OR UPDATE OF content, title ON public.pages FOR EACH ROW EXECUTE PROCEDURE public.pages_tsv_trigger(); | |
| -- |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment