172 похожих чатов

Приветствую всех! Кто сталкивался, подскажите пожалуйста по инструменту pg_pathman. Попытался

секционировать табличку ~700Гб. При запуске create_range_partitions с ключом блокирующего переливания, случилось следующее: в течении 12 часов шёл процесс, под конец когда диск уже увеличился на ~700Гб, пришел ООМ и отстрелил процесс запроса на переливание. По мониторингу видно, что в течении всего процесса ОЗУ линейно аллоцировалась и обратно не возвращалась, пока процесс не упал.
Через partition_table_concurrently все получилось за 48 часов, но это очень долго при условии что есть возможность дать заблокироваться таблице. Postgresql 9.6, pg_pathman latest, ubuntu 20, 64ГБ озу, 48 ядер, ssd.
Кто подскажет, таблицы такого размера лучше пускать через partition_table_concurrently и ждать дольше или я что-то сделал не так? Есть вообще проблема утечки памяти с этим расширением?

9 ответов

18 просмотров

Для начала я бы посоветовал обновиться до последнего релиза postgres, который поддержывает pg_pathman. А лушчэ -- прямо сразу перейти на pg_partman или встроенное партицыонирование версий 11-14.

А так -- ну, понятно, что если у вас не работает create_range_partitions, зато работает create_range_partitions_concurrently -- то можно радоваться, что хоть как работает. Или, если хотите -- идите и чините баги в create_range_partitions заброшэнного инструмента на неподдержываемой версии postgres.

Но, кстати, дажэ 12 часов на 700 гигабайт перелива -- довольно много. Хотя... Если там 200 гигабайт heap, а остальное индэксы -- то можэт и нормально. Но я бы начал с плана миграцыи на что-то поддержываемое.

> В тестах он сильно выигрывает у partman. Как бы какая разница, если он помер? Да и... Оно выигрывало разве что когда нативное партицыонировани было в зачаточном состоянии. >пишут, что будут поддерживать его, исправлять ошибки. Только исправлять критические ошыбки -- и по остаточному принцыпу. При этом поддержка 9.6, думаю, если что то скоро будет совсем заброшэна (по причине прекращения поддержки 9.6 сообществом).

Efim- Автор вопроса
Ilya Anfimov
> В тестах он сильно выигрывает у partman. Как б...

Понял, спасибо. Подумаю как лучше поступить..

Астра что ли со встроенным и сертифицырованным pg?

Efim- Автор вопроса
Efim- Автор вопроса

Это получается, даже если удалять батчами получится около 3Гб в день надо удалять для равновесия. Прилично так..

Efim
Это получается, даже если удалять батчами получитс...

Ну, сколько там в гигабайтах -- это как повезёт, но да, дажэ полное удаление всего -- это несколько часов.

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта