[WIP] Allow pg_upgrade to copy segments of the same relfilenode in parallel

From: Jaime Casanova <jcasanov(at)systemguards(dot)com(dot)ec>
To: pgsql-hackers(at)postgresql(dot)org
Subject: [WIP] Allow pg_upgrade to copy segments of the same relfilenode in parallel
Date: 2022-02-02 02:57:00
Message-ID: Yfny/GbI7no+hdTs@ahch-to
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

This patch adds a new option (-J num, --jobs-per-disk=num) in
pg_upgrade to speed up copy mode. This generates upto ${num}
processes per tablespace to copy segments of the same relfilenode
in parallel.

This can help when you have many multi gigabyte tables (each segment
is 1GB by default) in different tablespaces (each tablespace in a
different disk) and multiple processors.

In a customer's database (~20Tb) it went down from 6h to 4h 45min.

It lacks documentation and I need help with WIN32 part of it, I created
this new mail to put the patch on the next commitfest.

Original thread: https://www.postgresql.org/message-id/flat/YZVbtHKYP02AZDIO%40ahch-to

--
Jaime Casanova
Director de Servicios Profesionales
SystemGuards - Consultores de PostgreSQL

Attachment Content-Type Size
0001-Add-jobs-per-disk-option-to-allow-multiple-processes.patch text/x-diff 8.9 KB

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Amit Kapila 2022-02-02 03:07:40 Re: Design of pg_stat_subscription_workers vs pgstats
Previous Message Tom Lane 2022-02-02 02:43:53 Re: A test for replay of regression tests