@pgsql

Страница 95 из 1062
blkmrkt
19.09.2016
19:22:05
Г-ди, что ж за фигня то. Запустил pg_dump с zero_damaged_pages = on, все равно он прерывается на pg_dump: Error message from server: ERROR: missing chunk number 0 for toast value 38645199 in pg_toast_16455 Сейчас запущу скрипт для перебора туплов с select * как @Aytuar предложил

AbiGeuS
20.09.2016
06:16:10
Добрый день. Может кто-нибудь просветить относительно механизма checksum. Предположим кластер инициализирован с ними. В какой момент и при каких операциях идет сверка? При каждом запросе на получение данных, в запросах на изменения или может вообще проверка осуществляется только при старте сервера? При работе утилиты pg_dump происходит контроль?

Sergey
20.09.2016
06:22:44
думаю что сверка делается при поднимании странички с диска в шаред буфер. А меняется при изменении данных страницы.

AbiGeuS
20.09.2016
06:30:15
Я так же предполагал, но хотелось бы более конкретного понимания. При работе с некоторыми командами (copy), насколько я знаю, в шаред буфере создаются отдельные структуры. Все ли они выполняют эти проверки.

Google
Sergey
20.09.2016
06:31:23
в доке ни чего не нашел. Тут либо спросить разработчиков, либо изучть исходник.

Pavel
20.09.2016
09:46:07
Хм, может кто подкинуть доку как правильно развернуть бекап сделанный под линуксом на базу на windows? А то сейчас он жалуется на ковычки.

Александр
20.09.2016
09:46:25
O_o

Pavel
20.09.2016
09:48:11
чо то все как-то совсем плохо

Александр
20.09.2016
09:49:18
А програмки разные не помогают?)

Айтуар
20.09.2016
09:49:28
зачем же адреса не замазал? ))

Pavel
20.09.2016
09:49:50
да фиг с ними

Pavel
20.09.2016
09:56:49
ну если не считать того, что он сделан под линуксом, а разворачиваю под виндой - нет.

Александр
20.09.2016
09:57:13
?

Pavel
20.09.2016
09:58:48
такое чувство, будто под виндой не та кодировка стоит

Айтуар
20.09.2016
10:00:45
Да там по умолчанию разные кодировки

Anton
20.09.2016
12:23:27
Коллеги, подскажите какие есть альтернативы дблинку, надо 2 базы в рамках одного хоста подружить ( дать возможность читать\менять данные )

Google
Anton
20.09.2016
12:23:47
помно что-то было еще, но что конктретно не могу загуглить :) помогите плз

Vadim
20.09.2016
12:23:48
postgres_fdw

Anton
20.09.2016
12:24:01
postgres_fdw dml умеет ?

хотя почитаю пока )

Vadim
20.09.2016
12:24:14
до 9.6 только insert

Anton
20.09.2016
12:24:18
Вадим, спасибо !

Vadim
20.09.2016
12:24:30
не за что

blkmrkt
20.09.2016
14:08:15
Г-ди, что ж за фигня то. Запустил pg_dump с zero_damaged_pages = on, все равно он прерывается на pg_dump: Error message from server: ERROR: missing chunk number 0 for toast value 38645199 in pg_toast_16455 Сейчас запущу скрипт для перебора туплов с select * как @Aytuar предложил
Блин ну и фигня с этими тостами. Снова прошелся этим скриптом по записям в табице, запустил pg?dump, и та же ошибка missing value for pg_toast_N. Ночью нашел этот же скрипт для отбора битых записей, только на питоне: https://github.com/pgexperts/find-bad-toast/blob/master/find_bad_toast Он за 9 часов перебрал всего 2,7 миллиона записей из 450 миллионов. Что делать то, а?

zero_damaged_pages никак не повлиял на эксепшон при дампе pg_dump, я проверял что он включен в SHOW ALL

blkmrkt
20.09.2016
14:15:41
привет, покажи ошибку
Мигрирую бд на новый сервер, и вот с такой ошибкой отваливается pg_dump через 6 часрв: pg_dump: Dumping the contents of table "profiles" failed: PQgetResult() failed. pg_dump: Error message from server: ERROR: missing chunk number 0 for toast value 38645199 in pg_toast_16455 Я скриптом SELECTил все записи в таблице, и на эксепшонах создавал список невалидных id, которые потом сделал DELETE FROM profiles WHERE id in (1, 2, 3, ...), но все равно pg_dump отваливается

Dmitry
20.09.2016
14:16:12
ну да, у тебя файл от релейшена pg_toast_16455 транкейтнутый

xfs?

blkmrkt
20.09.2016
14:16:57
ext4

Kuroi
20.09.2016
14:17:07
Xfs же от такого вылечили тыщу лет назад, не?

Dmitry
20.09.2016
14:17:24
осадочек остался :D

бывают бородатые centos

Google
blkmrkt
20.09.2016
14:17:42
ох я не разбираюсь в этом. Последний раз про фс линукса читал про ReiserFS в журнале Хакер, автор еще в тюрячке сидит вроде до сих пор

Kuroi
20.09.2016
14:17:58
Ну да, я тоже попадался на такое, но лет 6-7 назад

blkmrkt
20.09.2016
14:18:35
у меня типичный Debian 8 и хардвар RAID с магнитными дисками, сейчас мигрирую на ssd c софтверным raid6

Kuroi
20.09.2016
14:18:46
А не, вру, какую-легаси файлопомойку пару лет назад спасал от xfs

blkmrkt
20.09.2016
14:18:46
Dmitry
20.09.2016
14:18:57
select pg_relation_filenode('pg_toast_16455'::oid);

помоему так

а можно его как-то вылечить?
^^ давай посмотрим что на диске, дай результат комманды

blkmrkt
20.09.2016
14:20:14
select pg_relation_filenode('pg_toast_16455'::oid);
ERROR: invalid input syntax for type oid: "pg_toast_16455" LINE 1: select pg_relation_filenode('pg_toast_16455'::oid)

Айтуар
20.09.2016
14:21:22
pg_relation_filenode(relation regclass)

https://www.postgresql.org/docs/current/static/functions-admin.html

Dmitry
20.09.2016
14:21:54
select pg_relation_filepath('pg_toast_16455'::regclass);

Айтуар
20.09.2016
14:22:19
может сразу файлик? pg_relation_filepath

blkmrkt
20.09.2016
14:22:31
select pg_relation_filepath('pg_toast_16455'::regclass);
хммм: ERROR: relation "pg_toast_16455" does not exist LINE 1: select pg_relation_filepath('pg_toast_16455'::regclass)

blkmrkt
20.09.2016
14:24:02
RAID6 вы выбрали зря
а какой лучше? Пока не поздно наверное можно реконфигурировать его

Google
Paul
20.09.2016
14:24:28
реконфигурировать нельзя - только удалить и заново создать

blkmrkt
20.09.2016
14:24:31
raid6? зачем?
ну я открыл вики, RAID6: посыпаться могут 2 диска, а данные не потеряются, ну и ок

а с RAID10 места мало

Denis
20.09.2016
14:24:46
а с raid6 медленно

Александр
20.09.2016
14:25:10
10 тоже не быстро))

blkmrkt
20.09.2016
14:25:25
ох, не знал. я потестил пока что, вроде бы прекрасно по сравнению с физ. диском

Sergey
20.09.2016
14:25:26
ну 6ка сильнее просаживается

Paul
20.09.2016
14:25:35
ну я открыл вики, RAID6: посыпаться могут 2 диска, а данные не потеряются, ну и ок
проблема в том, что они могут начать осыпаться равномерно. Когда диск вылетит - вы его поменяте, начнется ребилд и рейд рассыпется из-за отказа диска в момент ребилда

Pavel
20.09.2016
14:26:41
Не говоря о том, что ссд в рейде медленный

Александр
20.09.2016
14:28:25
Ну для ссд максимум что можно использовать это raid1 и то хз, нужен он или нет

blkmrkt
20.09.2016
14:30:27
ну еще будет время оптимизировать, сейчас бы бд на новый сервер перенести...

Roman
20.09.2016
15:38:37
Знатоки подскажите, 500 таблиц в SQL это нормально?

Paul
20.09.2016
15:39:24
Знатоки подскажите, 500 таблиц в SQL это нормально?
подозреваю, что зависит от задачи. Я видел больше и это было оправдано

Paul
20.09.2016
15:40:07
например?
полное управление технологическими цепочками огромного завода. В этой базе было все - от отчетов станков до финансовой аналитики.

Oracle + Sun E25K

Roman
20.09.2016
15:41:18
В данном случае имеет место быть CRM система vTiger

Yegor
20.09.2016
15:41:32
>Знатоки подскажите, 500 таблиц в SQL это нормально? Работал я как-то на банковской системе которой больше 20 лет, так там было около 500 таблиц, при том что она поддерживала реализацию SWIFT, разные виды платежей, аналитику, антифрод систему и еще хереву тучу функционала. А деплоилась как .WAR на WebLogic....

Paul
20.09.2016
15:41:56
В данном случае имеет место быть CRM система vTiger
для CRM, ИМХО, многовато. Но я так понимаю - решение коробочное, и деваться вам некуда

Google
Yegor
20.09.2016
15:42:04
У нее скорее всего говенная архитектура

Paul
20.09.2016
15:42:36
обычно большое количество таблиц живет в аналитических системах - данные разрозненные, потом их в OLAP-куб клеют

Roman
20.09.2016
15:42:43
У нее скорее всего говенная архитектура
Вот у меня подозрение похожее

Как они это пишут?

Yegor
20.09.2016
15:43:15
Скорее всего для кастомных обьектов создаются отдельные таблицы

Paul
20.09.2016
15:43:40
Как они это пишут?
тяп-ляп и в продакшн, как обычно. Качество архитектур в закрытых системах часто хромает

от того, что плодит в базе 1с - хочется рвать волосы на себе

Vadim
20.09.2016
16:03:53
по кол-ву таблиц определили гавеность архитектуры?)

Andrey
20.09.2016
16:05:59
> Знатоки подскажите, 500 таблиц в SQL это нормально? Странный критерий оценки нормальности.

Айтуар
20.09.2016
16:06:40
500 таблиц норм, а вот 500 схем это уже не очень

Pavel
20.09.2016
16:07:23
500 таблиц норм, а вот 500 схем это уже не очень
А поподробнее? Как раз мой случай теоретически ;)

На stackoverflow читал что до 10000 схем держит нормально

Alex
20.09.2016
16:14:20
pgsql может и держит нормально

а погромист не оч :D

Andrey
20.09.2016
16:14:33
Я слышал о случае, когда по схемам распихивали кастомеров - каждый клиент в своей схеме. Удобно, когда надо удалить или перенести на отдельную ноду все данные по конкретному клиенту, но неудобно выполнять DDL.

Страница 95 из 1062