Re: OOM killer while pg_restore

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: OOM killer while pg_restore
Дата
Msg-id 3305985.1646333012@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: OOM killer while pg_restore  (Marc Rechté <marc4@rechte.fr>)
Ответы Re: OOM killer while pg_restore  (Marc Rechté <marc4@rechte.fr>)
Список pgsql-performance
=?UTF-8?Q?Marc_Recht=c3=a9?= <marc4@rechte.fr> writes:
> Le 03/03/2022 à 16:31, Tom Lane a écrit :
>> Does memory consumption hold steady if you drop the FK constraints?

> Actually the number of rows is 232735712.
> Accordingly the RAM consumption would be x12 x3 = 7.8 GiB.
> This is close to the 8,1g I reported earlier (actually it was closer to 
> 7.8 GB, due to GiB vs. GB confusion).

> So there is no memory leak.

> It took 16 hours on my box to reach that RAM consumption, and then the 
> COPY failed when checking the first FK (as the referenced table was empty).

I'm guessing it was swapping like mad :-(

We've long recommended dropping FK constraints during bulk data loads,
and then re-establishing them later.  That's a lot cheaper than retail
validity checks, even without the memory-consumption angle.  Ideally
that sort of behavior would be automated, but nobody's gotten that
done yet.  (pg_restore does do it like that during a full restore,
but not for a data-only restore, so I guess you were doing the latter.)

            regards, tom lane



В списке pgsql-performance по дате отправления:

Предыдущее
От: Marc Rechté
Дата:
Сообщение: Re: OOM killer while pg_restore
Следующее
От: aditya desai
Дата:
Сообщение: Any way to speed up INSERT INTO