
Nikolay
21.08.2017
05:59:21
Параметр закоментирован

Denis
21.08.2017
06:04:10
Первое - а на каком запросе все падает? Ну и второе, отпишитесь в постгресовый багрепорт.

Artem
21.08.2017
06:09:12

Denis
21.08.2017
06:11:45
А можно схему задействованных таблиц и сам запрос? Ну или сами проверьте его на тестовой схеме с нагенерированными данными. Если повторяется сегфолт, вам 100% на багтрекер. Если нет, то можно попробовать подключиться по gdb

Google

Artem
21.08.2017
06:13:20
https://pastebin.com/KZzUAJ7s
Есть смысл полностью отключить huge pages?

Denis
21.08.2017
06:17:58
Вы нашли какую-то проблему с памятью при выполнении вашего запроса в случае параллельного сканирования. Если есть возможность исключить влияние huge pages, сделайте это.

Artem
21.08.2017
06:47:17
Ок, спасибо, будем экспериментировать.

Артур
21.08.2017
09:17:58
Всем привет. Вопрос немного не в тот чат, но иного у меня нет :)
В БД есть понятие "нормализация", аналогично в программировнии есть правило, при котором 1 класс должен выполнять 1 простую логику.
Не помню название как оно официально называется. кто знает скажите пожалуйста
Ответ на опережение: поиск юзал.

sic transit
21.08.2017
09:18:39
сингл респосивити

Артур
21.08.2017
09:19:05

Fike
21.08.2017
09:27:16
Респонсибилити

bal
21.08.2017
11:31:19
всем привет, ссорян за глупый вопрос а чем отличается insert от update спасибо заранее

Darafei
21.08.2017
11:34:22

Igor
21.08.2017
11:46:22
Апдейт это делит и инсерт вроде
В одном флаконе :)

bal
21.08.2017
11:51:13
Спасибо большое :))

Google

Sergey
21.08.2017
11:53:22

Igor
21.08.2017
12:01:38

Sergey
21.08.2017
12:03:10
HOT updates например

Ildar
21.08.2017
12:13:14
При хот апдейтах тоже создаётся новая версия тупла, только индекс не обновляется. В itemid помещается редирект

Sergey
21.08.2017
12:15:09
и происходит все это только в рамках одной странички... в курсе. Однако Update != Delete + Insert

Ildar
21.08.2017
12:20:02
Ну в старый тупл ставится xmax и создаётся новый. Это по сути то же самое, что делает delete+insert

Darafei
21.08.2017
12:20:49

Kirill
21.08.2017
12:21:23
Еще insert умеет обрабатывать уник конфликты.
Хороший вопрос кстати для тех. интервью

Darafei
21.08.2017
12:22:53

Sergey
21.08.2017
12:23:24

Kirill
21.08.2017
12:23:47
Апдейт на существующее значение

Darafei
21.08.2017
12:25:36
Это в insert нужен on conflict update, потому что ты тапл или создаешь, или обновляешь

Kirill
21.08.2017
12:26:32

Darafei
21.08.2017
12:27:22

Kirill
21.08.2017
12:27:40
Вместо not exists

Darafei
21.08.2017
13:00:42
Как ты организуешь отсутствие конфликта после апдейта через is distinct from внутри update?

loki
21.08.2017
13:12:28
Сап народ, кто-нибудь сталкивался со сломанным внешним архиватором?
$ pg_dump -Fc > dump.gz
postgrespro-9.6.4
"
pg_dump: [внешний архиватор] ПРЕДУПРЕЖДЕНИЕ: позиция ftell не соответствует ожидаемой -- используется ftell"

Yura
21.08.2017
13:14:26
А место на диске точно не кончилось?

Google

loki
21.08.2017
13:15:40
Место есть, туда же без кастомного формата без проблем создается

nietzschebrod
21.08.2017
13:17:01
не винда случайно?

loki
21.08.2017
13:18:02
Проверил все-таки cent os, беглое гугление привело: а) у вас кончилось место б) проверьте что не винда :)
Вообще технически он что-то и так пишет, я просто не риснул ждать. Причем даже на пустой схеме

nietzschebrod
21.08.2017
13:30:56
попробуй -f вместо редиректа
алсо это не .gz

Dmitry
21.08.2017
14:50:34
Ребята, расскажите как сейчас модно\правильно обновлять субд до 9.6 без простоя и используя новый сервер? какой из инструментов наиболе прост и работает как заявлено: slony, londiste, pgpool, pgbouncer?

Dmitry
21.08.2017
14:52:28
в левой руке

Dmitry
21.08.2017
14:56:30
@vadvmkn делитесь лучше опытом миграций\обновлений :) а не вот этим вот.

Dmitry
21.08.2017
14:57:56
pgpool и pgbouncer - даже не знаю чем поможет (RO копия?)

Dmitry
21.08.2017
15:02:02
Что тогда посоветуете?

Dmitry
21.08.2017
15:02:55
без переходных версий, прям на последнюю, которая вас устраивает
а до этого тестировать новую версию и тренироваться как сделать restore быстрее чтобы востанавливать в несколько потоков
бинарный апгрейд - конечно хорошо, но я никогда ему не доверял, сорян :(

Dmitry
21.08.2017
15:06:01
этот вариант мне нравится больше всего. но есть вопросы, будет ли достаточно времени для плановых работ и делать ли при этом pg_upgrade или это излишне?

Dmitry
21.08.2017
15:06:02
https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=e95c4bd1133acf7fc58a52212253129ef2dc9d12

Google

Dmitry
21.08.2017
15:06:52
выше читайте. я бы использовал pg_dump && restore
представляете сколько может жить ошибка в pg_upgrade

Dmitry
21.08.2017
15:15:43
ок. благодарю за ответы.

Ildar
21.08.2017
15:26:27
на pgday рассказывали как обновляются с pglogical. Поднимают логическую реплику, догоняются и включают ее как основной сервер. Сам не пробовал, но вроде как должен быть минимальный даунтайм

Mike Chuguniy
21.08.2017
15:28:02
pglogical уже умеет весь инстанс или до сих пор одной базой всё ограничено?

Admin
ERROR: S client not available

Ildar
21.08.2017
15:30:54
хз

Nikolay
21.08.2017
15:33:49

Ildar
21.08.2017
15:34:28

Nikolay
21.08.2017
15:36:26

Dmitry
21.08.2017
15:37:26

Mike Chuguniy
21.08.2017
15:38:12
ВРЕТИ
Мы ещё и не так могём!

Игорь
21.08.2017
16:20:45

Nikolay
21.08.2017
16:24:36
Тогда не обновляйте :) Авито до сих пор на 9.2 :)

Gonchik
21.08.2017
16:25:57

Nikolay
21.08.2017
16:28:28

Gonchik
21.08.2017
16:33:00

Dmitry
21.08.2017
16:35:51
А так вообще вам самим нужно решать- что важнее целостность данных или несколько часов на майнтенс

Google

Dmitry
21.08.2017
16:39:33
Фичи - да. Но фичи деньги помогут зарабатывать или самолюбие разраба будет тешить?

Gonchik
21.08.2017
16:40:12

Nikolay
21.08.2017
16:43:41
Ну, мускул погоди!

Gonchik
21.08.2017
16:46:53
Ну, мускул погоди!
Это же у убер такой переход был? С мускул и обратно? Точно ;) https://eng.uber.com/mysql-migration/

Nikolay
21.08.2017
16:47:43
Вот и разрабы потешились!

Fike
21.08.2017
16:52:19

Айтуар
21.08.2017
19:01:53

Dmitry
21.08.2017
19:03:28

Айтуар
21.08.2017
19:05:02

Dmitry
21.08.2017
19:05:25
чек суммы не зашищают
по крайней мере от всего :)
выкрутасов файловой системы
ща :)
/usr/lib/postgresql/9.6/bin/initdb -D main -k
/usr/lib/postgresql/9.6/bin/pgbench -i -s 100
postgres=# select count(*) from pgbench_accounts;
count
—------—
10000000
(1 row)
postgres=# \q
postgres@ubuntu:~/9.6$ rm -f main/base/12439/16396.1
postgres@ubuntu:~/9.6$ psql
psql (9.6.4)
Type "help" for help.
postgres=# select count(*) from pgbench_accounts;
count
—-------
7995392
(1 row)
postgres=#