Skip site navigation (1) Skip section navigation (2)

Re: ERROR: out of memory

From: Oleg Bartunov <oleg(at)sai(dot)msu(dot)su>
To: Alexander Kuprijanov <sanya-spb(at)list(dot)ru>
Cc: pgsql-ru-general(at)postgresql(dot)org
Subject: Re: ERROR: out of memory
Date: 2007-10-31 18:51:33
Message-ID: Pine.LNX.4.64.0710312145570.14368@sn.sai.msu.ru (view raw or flat)
Thread:
Lists: pgsql-ru-general
On Wed, 31 Oct 2007, 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.
>
> файлик 1732.dat весит >1,5GB (>44M records)
>
> какие параметры крутить чтоб не вываливалось? где накосячил?

а попробуй убрать все проверки в таблице. Чего их проверять ?

>
>
> еще попутно вопрос - начиная с некоторых пор (недавно, но уже стабильно) все
> запросы тормозят, понимаю что накосячино, но непойму где ковырять... я так
> понимаю проблема с разделяемой памятью и иже с ней, так как довольно много
> таблиц перевалило за 10мега записей, и теперь посгресу тяжело... постоянно
> роется в свопе. Выставлял shared_memory в 1.5G - не помогло... где еще надо
> крутить?

это длинная история :) Для 2Gb памяти, больше 1Gb не рекомендую шаред память
ставить.  Какая у тебя версия постгреса ? Судя по всему, довольно древняя

>
>
>
> система: FreeBSD 5.4-RELEASE-p22
> СУБД: PostgreSQL 8.1.10
> железка с 2GB оперативки и 20G свопа
>
> sudo sysctl kern.ipc.
> kern.ipc.maxsockbuf: 262144
> kern.ipc.sockbuf_waste_factor: 8
> kern.ipc.somaxconn: 128
> kern.ipc.max_linkhdr: 16
> kern.ipc.max_protohdr: 40
> kern.ipc.max_hdr: 56
> kern.ipc.max_datalen: 152
> kern.ipc.nmbclusters: 25600
> kern.ipc.piperesizeallowed: 1
> kern.ipc.piperesizefail: 0
> kern.ipc.pipeallocfail: 0
> kern.ipc.pipefragretry: 0
> kern.ipc.pipekva: 409600
> kern.ipc.pipes: 44
> kern.ipc.maxpipekva: 16777216
> kern.ipc.msgseg: 2048
> kern.ipc.msgssz: 8
> kern.ipc.msgtql: 40
> kern.ipc.msgmnb: 2048
> kern.ipc.msgmni: 40
> kern.ipc.msgmax: 16384
> kern.ipc.semaem: 16384
> kern.ipc.semvmx: 32767
> kern.ipc.semusz: 332
> kern.ipc.semume: 40
> kern.ipc.semopm: 100
> kern.ipc.semmsl: 240
> kern.ipc.semmnu: 120
> kern.ipc.semmns: 240
> kern.ipc.semmni: 40
> kern.ipc.semmap: 256
> kern.ipc.shm_allow_removed: 0
> kern.ipc.shm_use_phys: 0
> kern.ipc.shmall: 549011456
> kern.ipc.shmseg: 128
> kern.ipc.shmmni: 192
> kern.ipc.shmmin: 1
> kern.ipc.shmmax: 549011456
> kern.ipc.numopensockets: 164
> kern.ipc.maxsockets: 25600
> kern.ipc.nsfbufsused: 0
> kern.ipc.nsfbufspeak: 2
> kern.ipc.nsfbufs: 6656
>
>
> из postgresql.conf
>
> # RESOURCE USAGE (except WAL)
> #---------------------------------------------------------------------------
>
> # - Memory -
>
> shared_buffers = 65536
> work_mem = 20480
>
> # - Free Space Map -
>
> max_fsm_pages = 256000
> max_fsm_relations = 8000
>
>
>
>
>

 	Regards,
 		Oleg
_____________________________________________________________
Oleg Bartunov, Research Scientist, Head of AstroNet (www.astronet.ru),
Sternberg Astronomical Institute, Moscow University, Russia
Internet: oleg(at)sai(dot)msu(dot)su, http://www.sai.msu.su/~megera/
phone: +007(495)939-16-83, +007(495)939-23-83

In response to

pgsql-ru-general by date

Next:From: Andrey N. OktyabrskiDate: 2007-11-01 06:35:14
Subject: Re: ERROR: out of memory
Previous:From: Alexander KuprijanovDate: 2007-10-31 13:07:11
Subject: ERROR: out of memory

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group