
Anton [Mgn, az09@osm]
04.10.2018
14:31:50
Вот такие функции нужно создать, чтобы pgadmin3 смог спокойно соединиться к PostgreSQL 10:
create function pg_last_xlog_receive_location() returns text as $$ select pg_last_wal_receive_lsn()::text $$ language sql;
create function pg_last_xlog_replay_location() returns text as $$ select pg_last_wal_replay_lsn()::text $$ language sql;
create function pg_is_xlog_replay_paused() returns bool as $$ select pg_is_wal_replay_paused() $$ language sql;

Terminator
04.10.2018
14:42:45
@s_ignatov будет жить. Поприветствуем!

Lestat -
04.10.2018
15:36:48
как выполнить 'plpgsql' код не создавая функцию

Google

Lestat -
04.10.2018
15:36:49
?

elfiki
04.10.2018
15:38:14

abc
04.10.2018
15:38:41
Подскажите. Частичный (по условию) уникальный индекс не может участвовать в upsert операции?

Lestat -
04.10.2018
15:39:12

MikaelBox
04.10.2018
15:42:58
do не позволяет возвращать наборы

Darafei
04.10.2018
15:44:05
Raise notice
Или в табличку положить

MikaelBox
04.10.2018
15:44:49
если виндовый клиент возможен, то построить схему базы графически со связями может помочь EMS PostgreSQL Manager

Mike Chuguniy
04.10.2018
15:45:42

MikaelBox
04.10.2018
15:46:34

Mike Chuguniy
04.10.2018
15:46:56
А я за пгмоделер вообще молчу - мне его лень было собирать.

Google

MikaelBox
04.10.2018
15:47:10
бобра не пробовал для этих целей

Mike Chuguniy
04.10.2018
15:47:52
И да, EMS, который строит схемы со связями - он не платный ли случаем? Что-то мне говорит, что... А впрочем поиск вернёт нужный результат.

MikaelBox
04.10.2018
15:48:30
есть лайт версия, если мне не изменят память

Lestat -
04.10.2018
15:49:06
@Komzpa @MikaelBox @elfiki спасибо

Mike Chuguniy
04.10.2018
15:49:10
В том-то и дело, умеет ли бесплатная версия рисовать схемы со связями - я сейчас не помню, врать не буду.

Lestat -
04.10.2018
15:49:12

MikaelBox
04.10.2018
15:51:04

Dmitry
04.10.2018
16:34:39
Как же не любят многие платить за коммерческий софт. Как это мило, когда за табуретки и пенные напитки платить - это норма, а как софт, так подавай бесплатно. Open Source завоевал сердца. И мозги.

Terminator
04.10.2018
18:16:18
@AveVM будет жить. Поприветствуем!

Yukari
04.10.2018
18:28:01

Mike Chuguniy
04.10.2018
18:29:17

Anton [Mgn, az09@osm]
04.10.2018
18:30:50
иногда даже за бесплатные аналоги платить не стыдно

Mike Chuguniy
04.10.2018
18:37:19
А ещё EMS, по крайней мере в июле не умеет git в принципе. Т.е совсем. Ну и для зачем козе баян, хучь за деньги, хучь бесплатно.

Dmitry
04.10.2018
18:38:08

Mike Chuguniy
04.10.2018
18:39:33

Dmitry
04.10.2018
18:39:57

Mike Chuguniy
04.10.2018
19:00:26

Yaroslav
04.10.2018
19:37:20
так и сделал)
refcursor/fetch ещё можно использовать.
Вот так, примерно:
BEGIN;
DO $$
DECLARE c refcursor := 'foo';
BEGIN
OPEN c FOR
SELECT *
FROM orders
ORDER BY id;
END;
$$;
FETCH ALL FROM foo;
COMMIT;

Lestat -
04.10.2018
19:38:17
коммит только смущает

Google

Lestat -
04.10.2018
19:38:50
думается по умолчанию автокоммит стоит

Yaroslav
04.10.2018
19:40:53

Lestat -
04.10.2018
19:42:10

Yaroslav
04.10.2018
19:51:03

Terminator
04.10.2018
20:38:38
@iiiiiiiiiiif будет жить. Поприветствуем!

??Suffer
04.10.2018
20:40:55
create table tags (
doc_id serial PRIMARY KEY ,
words text[] not null default '{}'
);
create index doc_tags_id_tags on tags using gin(words);
EXPLAIN (ANALYZE, BUFFERS) select * from tags where words && array['43NTJ4FO98U0', '218SUYE228OBW'];
https://explain.depesz.com/s/i0S
это можно ускорить?
почему блоки красные?

S
04.10.2018
20:54:16

Volodymyr Kostyrko
04.10.2018
21:00:01

Yaroslav
04.10.2018
21:11:55

??Suffer
04.10.2018
21:14:41
хм
Дропнул индекс, создал снова и все начало летать
https://explain.depesz.com/s/Nw3D

Yaroslav
04.10.2018
21:18:24

??Suffer
04.10.2018
21:20:13
> Вы ANALYZE таблицы делали?
да

Grigory
04.10.2018
21:23:59

Yaroslav
04.10.2018
21:24:20
> Вы ANALYZE таблицы делали?
да
Да, оценки всё равно как-то не очень... но, с другой стороны, ну и что? ;)
(Тут у планировщика выбор всё равно небогатый: либо этот индекс, либо seqscan.)
Да, кстати... Вы вроде раньше план с другой константой показывали?

??Suffer
04.10.2018
21:25:11
Что значит константа?

Google

Volodymyr Kostyrko
04.10.2018
21:25:49
218SUYE228OBW

??Suffer
04.10.2018
21:26:06
да, другое значения

Volodymyr Kostyrko
04.10.2018
21:26:24
Если по статистике оно видит что какого-то значения в таблице нет - оно его и искать не будет.

Yaroslav
04.10.2018
21:26:55
Что значит константа?
В первом плане:
(words && '{43NTJ4FO98U0,218SUYE228OBW}'::text[])
В этом:
(words && '{43NTJ4FO98U0,GIT1}'::text[])
Может, при поиску по индексу действительно существенно отличается кол-во просматриваемых pages...

Volodymyr Kostyrko
04.10.2018
21:29:00
Я не об этом, там количество buffer hits показывает что оставшиеся значения не слишком популярны.

Yaroslav
04.10.2018
21:30:27

??Suffer
04.10.2018
21:31:18

Volodymyr Kostyrko
04.10.2018
21:32:00
А вы попробуйте изначальный набор параметров.

Yaroslav
04.10.2018
21:33:01

Volodymyr Kostyrko
04.10.2018
21:33:02
Если в индексе искать то чего там нет результат оно выдаст быстро. В противном случае на каждое совпадение добавится материализация.

??Suffer
04.10.2018
21:35:52
PostgreSQL 10.5 (Ubuntu 10.5-0ubuntu0.18.04) on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu 7.3.0-16ubuntu3) 7.3.0, 64-bit

Yaroslav
04.10.2018
21:38:10
Что делать в таких случаях?
Вполне возможно, что дело в этом:
https://www.postgresql.org/docs/current/static/gin-implementation.html#GIN-FAST-UPDATE

??Suffer
04.10.2018
21:40:01
select * gin_clean_pending_list();
syntax error at or near "gin_clean_pending_list"
LINE 1: select * gin_clean_pending_list()

Volodymyr Kostyrko
04.10.2018
21:42:09
from
или звезду убрать

Yaroslav
04.10.2018
21:42:31

??Suffer
04.10.2018
21:43:37
select gin_clean_pending_list();
function gin_clean_pending_list() does not exist
LINE 1: select gin_clean_pending_list()
^
HINT: No function matches the given name and argument types. You might need to add explicit type casts.

Yaroslav
04.10.2018
21:44:58

Google

Yaroslav
04.10.2018
21:45:49
Я намекаю на "Argument data types" (и ведь Вы вроде документацию прочитали :( ).

??Suffer
04.10.2018
21:48:20
Я не читал