Alexander Kuprijanov wrote:
> Добрый День
>
> помогите разобраться...
>
> пытаюсь ресторить такую вот табличку
>
> CREATE TABLE awp_cards.idcard_idterm
> (
> idcard int4 NOT NULL,
> idterm int4 NOT NULL,
> datetimerec timestamp NOT NULL DEFAULT ('now'::text)::timestamp(6) without
> time zone,
> CONSTRAINT idcard_idterm_pkey PRIMARY KEY (idcard, idterm),
> CONSTRAINT idcard_fkey FOREIGN KEY (idcard)
> REFERENCES awp_books.idcard (idcard) MATCH SIMPLE
> ON UPDATE NO ACTION ON DELETE NO ACTION,
> CONSTRAINT idterm_fkey FOREIGN KEY (idterm)
> REFERENCES awp_books.idterm (idterm) MATCH SIMPLE
> ON UPDATE NO ACTION ON DELETE NO ACTION
> )
> WITHOUT OIDS;
>
> ресторю след. образом:
>
> cat ./1732.dat | psql -h host -d Base -c 'COPY awp_cards.idcard_idterm
> (idcard, idterm, datetimerec) FROM stdin;'
>
> спустя некоторое время вываливается:
>
> ERROR: out of memory
> DETAIL: Failed on request of size 32.
Если есть возможность посмотреть stderr от PG при возникновении этой
ошибки - там должна быть статистика по использованию памяти, есть ли
возможность ее прислать?
В любом случае, скорее всего ошибка вызвана наличием FOREIGN KEY в
таблице, если их убрать на время копирования - проблема должна
исчезнуть.
>
> файлик 1732.dat весит >1,5GB (>44M records)
>
> какие параметры крутить чтоб не вываливалось? где накосячил?
>
>
> еще попутно вопрос - начиная с некоторых пор (недавно, но уже стабильно) все
> запросы тормозят, понимаю что накосячино, но непойму где ковырять... я так
> понимаю проблема с разделяемой памятью и иже с ней, так как довольно много
> таблиц перевалило за 10мега записей, и теперь посгресу тяжело... постоянно
> роется в свопе. Выставлял shared_memory в 1.5G - не помогло... где еще надо
> крутить?
Как часто делается vacuum для тормозящих таблиц?
Regards,
Alexey.