Huge memory consumption on partitioned table with FKs

Поиск
Список
Период
Сортировка
От Tatsuro Yamada
Тема Huge memory consumption on partitioned table with FKs
Дата
Msg-id cab4b85d-9292-967d-adf2-be0d803c3e23@nttcom.co.jp_1
обсуждение исходный текст
Ответы Re: Huge memory consumption on partitioned table with FKs
Список pgsql-hackers
Hi Hackers,

My company (NTT Comware) and NTT OSS Center did verification of
partitioned table on PG14dev, and we faced a problem that consumed
huge memory when we created a Foreign key constraint on a partitioned
table including 500 partitioning tables and inserted some data.

We investigated it a little to use the "pg_backend_memory_contextes"
command and realized a "CachedPlan" of backends increased dramatically.
See below:

Without FKs
==============================
CachedPlan 0kB

With FKs (the problem is here)
==============================
CachedPlan 710MB


Please find the attached file to reproduce the problem.

We know two things as following:
   - Each backend uses the size of CachedPlan
   - The more increasing partitioning tables, the more CachedPlan
     consuming

If there are many backends, it consumes about the size of CachedPlan x
the number of backends. It may occur a shortage of memory and OOM killer.
We think the affected version are PG12 or later. I believe it would be
better to fix the problem. Any thoughts?

Regards,
Tatsuro Yamada

Вложения

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

Предыдущее
От: Fujii Masao
Дата:
Сообщение: Re: walsender bug: stuck during shutdown
Следующее
От: Surafel Temesgen
Дата:
Сообщение: Re: Evaluate expression at planning time for two more cases