Re: ERROR: out of memory

From: Alexander Kuprijanov <sanya-spb(at)list(dot)ru>
To: pgsql-ru-general(at)postgresql(dot)org
Subject: Re: ERROR: out of memory
Date: 2007-11-01 11:44:35
Message-ID: 200711011444.35291.sanya-spb@list.ru
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-ru-general

За ссылочку спасибо,

Проблему решил скармливанием файла по кускам... скоро придут новые серваки там
памяти на порядок больше, с ними и буду экспериментировать в плане
производительности..

а с этим чудо-железом незнаю что делать...
RAID-5 (5+1 на SATA)
% mount
/dev/amrd0s1a on / (ufs, local, soft-updates)
devfs on /dev (devfs, local)
/dev/amrd0s1e on /tmp (ufs, local, soft-updates)
/dev/amrd0s1f on /usr (ufs, local, noatime, soft-updates)
/dev/amrd0s1d on /var (ufs, local, noatime, soft-updates)

PostgreSQL 8.1.10 из портов (с опцией O3)

запросы все довольно тяжелые:
периодическое добавление больших объемов
и постоянные юзерские селекты (сборка из большого числа табличек, некоторые из
которых гигабольшие...)

таблички все нормализованы (в пределах разумного), где надо добавлены ключи и
индексы...

пытался проапгрейдить базу, но на pg_restore ручки опустились (прождал 4 часа,
не увидел прогресса, и вернул все в обратный зад...)

помнится мне, Олег упоминал некую программулину, которая на уровне файлов
апгрейдит postgres...

а сабж, собственно, не только на insert встречается, но и на select всей
таблички (вне зависимости от того куда: на вывод или в другую табличку).
больше 6,5 гигазаписи из таблички (int4, int4, timestamp) не получить
(собственно, в рабочем порядке не требуется, но для админских целей было
надо...)

В сообщении от Thursday 01 November 2007 09:35:14 Andrey N. Oktyabrski
написал(а):
> Alexander Kuprijanov wrote:
> > еще попутно вопрос - начиная с некоторых пор (недавно, но уже стабильно)
> > все запросы тормозят, понимаю что накосячино, но непойму где ковырять...
> > я так понимаю проблема с разделяемой памятью и иже с ней, так как
> > довольно много таблиц перевалило за 10мега записей, и теперь посгресу
> > тяжело... постоянно роется в свопе. Выставлял shared_memory в 1.5G - не
> > помогло... где еще надо крутить?
>
> Если роется именно в свопе, значит мало физической памяти для текущих
> настроек, тогда буфера надо уменьшать.
>
> Вообще, как Олег правильно заметил, дело это нетривиальное. Невозможно
> дать правильных рекомендаций, не зная:
> - конфигурацию железа (это не только память, там вроде диски ещё бывают
> обычно)
> - настройки ФС для раздела с базами постгреса и для раздела с логами
> транзакций (желательно, чтобы это были разные физические диски)
> - насколько часто обновляются данные и как - часто понемногу, или редко
> большими кусками
> - насколько эффективно оптимизированы запросы
> - и т.д. и т.п. - очень много всего, так сразу и не вспомнить всего, на
> что стоит обратить внимание.
>
> Вот ссылка неплохая на тему куда смотреть для выявления тормозов:
> http://www.powerpostgresql.com/PerfList/
>
> > ERROR: out of memory
> > DETAIL: Failed on request of size 32.
> >
> > файлик 1732.dat весит >1,5GB (>44M records)
> >
> > какие параметры крутить чтоб не вываливалось? где накосячил?
>
> Я бы попробовал выключить все индексы и constraint'ы на время загрузки.
> Не вредно разбить этот файл на несколько и скормить их по очереди.
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 1: if posting/reading through Usenet, please send an appropriate
> subscribe-nomail command to majordomo(at)postgresql(dot)org so that your
> message can get through to the mailing list cleanly

--
Tajloro krimis, botisto pendas

In response to

Browse pgsql-ru-general by date

  From Date Subject
Next Message Peter Teslenko 2007-11-02 11:40:57 pg_dump ? CREATE USER.?????? ???
Previous Message Alexey Klyukin 2007-11-01 10:57:24 Re: ERROR: out of memory