
Alexey
21.08.2017
19:10:38
так это же просто праздник какой-то. серьёзно?

Dmitry
21.08.2017
19:11:01

Айтуар
21.08.2017
19:11:16

Dmitry
21.08.2017
19:11:37

Google

Dmitry
21.08.2017
19:11:56
обнулить. xfs так поступает

Айтуар
21.08.2017
19:12:39


Dmitry
21.08.2017
19:12:58
postgres=# select count(*) from pgbench_accounts;
count
—------—
10000000
(1 row)
postgres=# select pg_relation_filepath('pgbench_accounts');
pg_relation_filepath
—------------------—
base/12439/16415
(1 row)
postgres=# \q
postgres@ubuntu:~/9.6$ rm -f main/base/12439/16415
16415 16415.1 16415_fsm 16415_vm
postgres@ubuntu:~/9.6$ > main/base/12439/16415.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=#
> main/base/12439/16415.1
обнуление файла на самом деле равносильно его удалению
pg просто прошупывает eof

Айтуар
21.08.2017
19:13:50
Т.к. если не перезапускать БД в памяти останутся ваши правильные не тронутые блоки данных.

Dmitry
21.08.2017
19:13:59
это если shb хватит
у меня в данном случае немного

Айтуар
21.08.2017
19:14:15

Dmitry
21.08.2017
19:14:44
не важно, представьте что после ребута ваш pg ничего не скажет про то что вы проебали данные
и насрать на чексуммы или еще что-то
а если вы надетесть на то что с shb он скинет в wal что-то то вас тут тоже можно огорчить

Google

Айтуар
21.08.2017
19:15:51

Dmitry
21.08.2017
19:16:02
если в wal есть запись о том что есть смещение на 1000k блоков
и таких файлов нет
pg просто забьет нулями
все 1000k-1 блоков
и ничего вам не скажет

Аггей
21.08.2017
19:17:10
Ну допустим тот же oracle тоже ничего не скажет - пока читать corrupted блок не будете

Dmitry
21.08.2017
19:17:43
ну вот не надо, чтобы распидорашеный оракл запустить надо попотеть

Айтуар
21.08.2017
19:17:46

Dmitry
21.08.2017
19:17:52
а тут сраных 5 файлов для старта надо

Alexey
21.08.2017
19:17:56
это-то понятно. но я вот не могу представить, как с mysql повторить такой же трюк, как выше с pgbench

Аггей
21.08.2017
19:18:04
Он орет благим матом, если версии датафайлов различаются, а вот на запись пары байт hex редактором - ничего не скажет

Айтуар
21.08.2017
19:18:54

Аггей
21.08.2017
19:19:37
Нет, там есть еще метка типа xid...
Оракл будет крыть вас матом на контрол файлы, на битые undo и redo, но вот повреждения в блоках данных заметит только при чтении
Правда там достаточно развита обвязка - системные таблицы и вьюхи которые позволяют понять какие именно записи повреждены и даже как-то пофиксить это

Alexey
21.08.2017
19:22:54
что в общем логично. чтобы повреждения в данных заметить, надо на данные посмотреть для начала

Аггей
21.08.2017
19:23:42

Artem
21.08.2017
22:43:30
Но pglogical не терпит любых изменений в схеме данных, хоть там и можно отдельно давать ddl команды, но решение явно не на постоянную работу.

Google

Artem
22.08.2017
01:37:55
По поводу Segmentation fault Постгреса в проде:
Потестил те же самые запросы на деве, всё ок. Ничего не падает.
Но конфиги полностью одинаковые,!
В связи с этим есть следующий вопрос:
Параметр dynamic_shared_memory_type есть смысл сменить с posix на sysv ?

Darafei
22.08.2017
03:57:46
а трейс в gdb пробовали смотреть?
ну что бы хотя бы подсистему, где падает, представлять

Artem
22.08.2017
04:20:36
А можно мануал как юзать gdb, для тех кто из деревни :)

Denis
22.08.2017
05:02:23

Artem
22.08.2017
05:02:54
Спасибо!

Алексей
22.08.2017
13:56:44
господа, а как соотносятся команды
pg_archivecleanup и pg_basebackup ?
не очень понимаю что надо дать на вход клинапу после бекапа через бейсбекап

Darafei
22.08.2017
13:57:20
а почему ты решил, что они соотносятся?

Алексей
22.08.2017
13:57:37
не знаю. хотел бы что бы соотносились :)
как то хочется удалять валы

Darafei
22.08.2017
13:58:38
https://www.postgresql.org/docs/9.6/static/pgarchivecleanup.html
кажется, документация достаточно понятно написана

Алексей
22.08.2017
14:00:20
увы. она написано недостаточно понятно.

Darafei
22.08.2017
14:00:57
pg_archivecleanup дёргает сам постгрес в recovery, когда отыграет вал

Алексей
22.08.2017
14:02:29
получается что клинап немного бесполезен при бекапе через pg_basebackup со слейва.
на мастере почистить вал не получится. и надо что то придумывать.
сейчас я вижу что в backup_label есть указание на файл который последний. но этого файла еще нету в архиве.

Google

Игорь
22.08.2017
14:11:04

Алексей
22.08.2017
14:11:24
я не хочу ничего изобретать. просто пытаюсь собрат ьвсе в кучу.
получается фигово и стремно.
для ha есть patroni. и он сделал так что ha работает.
в доке патрони есть упомнимание про wal-e

Alex
22.08.2017
14:16:04
что ты хочешь чистить

Admin
ERROR: S client not available

Alex
22.08.2017
14:16:09
ответь себе на этот вопрос

Алексей
22.08.2017
14:16:21
я хочу чистить примененные валы

Alex
22.08.2017
14:16:47
в каком случае ?

Игорь
22.08.2017
14:16:52
настрой barman, например

Алексей
22.08.2017
14:18:15
чем плох бекап через basebackup?

Nikolay
22.08.2017
14:18:58
Уже писали выше

Аггей
22.08.2017
14:20:33

Алексей
22.08.2017
14:20:51
у меня база 5 гигов.
мне не жалко.

Google

Аггей
22.08.2017
14:21:40
У меня базы 100 GB - 1 TB. Тут уже есть на чем экономить )

Игорь
22.08.2017
14:22:08
тогда pgbackrest он жмет

Алексей
22.08.2017
14:23:33
мне не надо жать. у мен ядедублицирующая схд под бекап.
мне только удалять валы.

Nikolay
22.08.2017
14:25:48

Петр
22.08.2017
14:26:25
что мешает вам удалить валы?

Алексей
22.08.2017
14:28:01
как понять какие можно удалить ?

Петр
22.08.2017
14:29:01
1) глянуть где сейчас находится стендбай
2) посмотреть .backup

Алексей
22.08.2017
14:29:25

Петр
22.08.2017
14:29:31
3) посмотреть в менеджер бекапа, какие файлы забекаплены

Алексей
22.08.2017
14:29:38
они создаются после pg_start_backup
а выполнить оный я не могу ибо он выполнятся должен на мастере если я правильно понимаю.
slave# su - postgres -c "psql -c \"select pg_start_backup('test')\""
ERROR: recovery is in progress
HINT: WAL control functions cannot be executed during recovery.

Игорь
22.08.2017
14:39:15

Петр
22.08.2017
14:40:06
на примари смотрите
pg_xlogfile_name()

Алексей
22.08.2017
14:50:40
так опять скриптами запахло и ssh с ноды на ноду

Петр
22.08.2017
14:55:24
бэкап без скриптов выполняется у вас?